2. Copyright Arnaud Weil 2011-2017
Pourquoi .NET Core ?
<troll>Parce qu’il y a Node.JS</troll>
.NET 4.6: l’historique (WPF, Windows Forms,
ASP.NET)
.NET Core: moderne, versatile
Cross-platform: Linux, Windows, Docker, OSX
Léger
Compatible avec .NET sous Windows
3. Copyright Arnaud Weil 2011-2017
Pourquoi ASP.NET Core?
Front-end
• Angular
• React
• Vue
• Knockout
• …
Back-end
• ASP.NET
Core
• Node.JS
• Ruby on
Rails
• …
Données
• Services
(API)
• SQL
Server
• NoSQL
• …
4. Copyright Arnaud Weil 2011-2017
Le rôle du back-end
Serveur HTTP
Ecouter sur un port
Accepter une requête entrante
Faire son travail côté serveur
Retourner une réponse (HTML, JSON, contenu)
5. Copyright Arnaud Weil 2011-2017
ASP.NET Core au plus simple
public class Program
{
public static void Main(string[] args)
{
WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>()
.Build()
.Run();
}
}
public class Startup
{
public void Configure(IApplicationBuilder app)
{
app.UseWelcomePage();
}
}
6. Copyright Arnaud Weil 2011-2017
ASP.NET Core middleware
public class Program
{
public static void Main(string[] args)
{
WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>()
.Build()
.Run();
}
}
using Microsoft.AspNetCore.Http;
public class Startup
{
public void Configure(IApplicationBuilder app)
{
app.Run(async (context) => {
await context.Response.WriteAsync(
"Hello World!");
});
}
}
7. Copyright Arnaud Weil 2011-2017
ASP.NET Core MVC
public class Program
{
public static void Main(string[] args)
{
WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>()
.Build()
.Run();
}
}
public class Startup
{
public void ConfigureServices(
IServiceCollection services)
{
services.AddMvc();
}
public void Configure(IApplicationBuilder app)
{
app.UseMvc();
}
}
8. Copyright Arnaud Weil 2011-2017
ASP.NET MVC ?
Model, View, Controller
Testabilité
Répartition des rôles
Structure claire et connue
9. Copyright Arnaud Weil 2011-2017
ASP.NET MVC en un schéma
URL • Détermination de
la route
Action d’un
Contrôleur
• Récupère les
données à passer
à la vue
• Si POST, traite les
données
remontantes
Vue • Produit
le HTML
13. Copyright Arnaud Weil 2011-2017
Learn ASP.NET Core MVC
Apprendre en quelques
jours
Prérequis faibles
ebook et papier
https://leanpub.com/netc
ore
14. Copyright Arnaud Weil 2011-2017
Questions-réponses
contact@aweil.fr
@epo
Slides: http://bit.ly/devday2017