CONFÉRENCE : .NET CORE
DÉCOUVERTE DU DERNIER FRAMEWORK DE MICROSOFT
2
MAXIME BAUMANN
CONSULTANT JUNIOR .NET
@MBAUMANN_DEV
PRÉSENTATION
1. PRÉSENTATION GÉNÉRALE
2. NOTRE PREMIÈRE APPLICATION WEB
3. WEB API ET PORTABILITÉ
4. NOUVEAUTÉS ATTENDUES EN 2.1
3
SOMMAIRE
PRÉSENTATION GÉNÉRALE
HISTORIQUE, PHILOSOPHIE, MARCHÉ & OUTILS
4
5
HISTORIQUE DE .NET
.NET
1.0β
Nov.
2001
.NET 1.0
Fev.
2002
.NET 2.0
Nov.
2005
.NET 3.0
Nov.
2006
.NET 3.5
Nov.
2007
.NET 4.0
Avr.
2010
.NET
4.7.1
Oct.
2017
HISTORIQUE DU FRAMEWORK « CLASSIQUE »
6
HISTORIQUE DE .NET
.NET STANDARD
7
.NET SUR LE MARCHÉ
8
• Spécifications libres (Utilisées par Mono, Xamarin)
• Interopérabilité (Java.NET, IronPython)
• Cross-platform (Windows, Mac, Raspberry, …)
• Modulaire
• Open Source (.NET Core et .NET Standard)
• Communautaire
PHILOSOPHIE .NET
9
OUTILS POUR .NET CORE
Visual Studio Dotnet CLI
Nuget IntelliJ Rider
VS Code
10
HELLO WORLD ?
NOTRE PREMIÈRE APPLICATION WEB
ARCHITECTURE ET LIBRAIRIES
11
12
• Models
• Views
• Controllers
• Services
• ViewModels
• ViewComponents
• TagHelpers
ARCHITECTURE APPLICATIVE
MVC
13
• Classes porteuses de propriétés (Entités)
• Intégration avec EntityFramework
ARCHITECTURE APPLICATIVE
MODELS
14
• Templates RAZOR (optionnel, fortement typées)
• Supportent l’injection de dépendances (services)
• Embarquent un grand nombre d’automatisations
ARCHITECTURE APPLICATIVE
VIEWS
15
• Classe
• Actions (Méthodes)
• Attributs
• Injection de dépendances
ARCHITECTURE APPLICATIVE
CONTROLLERS
16
• Implémentation d’un contrat (Interface)
• Service Identity
ARCHITECTURE APPLICATIVE
SERVICES
17
• Représentation d’un modèle dans une vue
• Attributs pour les règles métier
ARCHITECTURE APPLICATIVE
VIEWMODELS
18
• Composant applicatif
• Plusieurs vues
• Injection de dépendances
ARCHITECTURE APPLICATIVE
VIEWCOMPONENTS
19
ARCHITECTURE APPLICATIVE
• Générateur de code front-end
• Prédéfinis ou personnalisés
TAGHELPERS
20
LIBRAIRIES
• NewtonSoft Json.NET
• ASP.NET Core Identity
• EntityFramework Core
• log4net
• ImageSharp
• LightInject
PAR MICROSOFT ET LA COMMUNAUTÉ
21
DÉMO
WEB API ET PORTABILITÉ
UN ŒIL SUR REST, LES JSS ET LE MOBILE
22
23
• Ensemble de helpers
• Prend en charge les réponses HTTP
REST EN .NET CORE
24
• Lien fort entre .NET et JS
• Permet exécution de JS côté serveur
• Peut servir pour pré-rendu React et Angular
JAVASCRIPT SERVICES
25
JAVASCRIPT SERVICES
26
• .NET Standard 2.0
• Partage des entités entre les solutions
MOBILITÉ ET PORTABILITÉ
27
DÉMO
NOUVEAUTÉS ATTENDUES EN 2.1
SIGNALR, WEBHOOKS, TESTS FONCTIONNELS
28
29
SIGNALR
• RPC
• Natif en 2.1.0
• Client JS via NPM
• Plus de dépendance à jQuery
FRAMEWORK D’APPLICATIONS EN TEMPS-RÉEL
30
SIGNALR
FRAMEWORK D’APPLICATIONS EN TEMPS-RÉEL
31
• Différents WebHooks prédéfinis : Github, Azure, Slack
WordPress, etc
• Récupérer des notifications
WEBHOOKS
32
• Gérés par Xunit
• Fixtures pour simuler un serveur
TESTS FONCTIONNELS
33
AUTRES NOUVEAUTÉS
• Razor UI
• Indentity as UI
• GDPR (HTTPS plus simple, Cookie Consent, …)
• Améliorations EF Core
• Intégration IIS simplifiée
34
RESSOURCES
• https://www.microsoft.com/net/learn/get-started
• https://blogs.msdn.microsoft.com/dotnet
• https://blogs.msdn.microsoft.com/webdev
• https://www.microsoft.com/net/learn/architecture
• https://github.com/thangchung/awesome-dotnet-core
POUR ALLER PLUS LOIN
MERCI POUR VOTRE ATTENTION
DES QUESTIONS, DES REMARQUES ?

Be Zend : Découverte de .NET Core

Notes de l'éditeur

  • #6 1.0 Beta: Ouverture à la communauté, Webservices 2.0: CLR v2, WinForm, ASP.NET, ADO.NET 3.0: WCF, WPF 3.5: LINQ, EF 4.0: Parallélisme multi-core ou distribué (arrivé multicoeurs) 4.7.1: Net Standard 2.0
  • #8 Classement tiobe
  • #10 Ajouter screenshots VS => RAD (Rapid Application Development)