SlideShare une entreprise Scribd logo
1  sur  38
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.7.1
Oct. 2017
HISTORIQUE DU FRAMEWORK « CLASSIQUE »
6
HISTORIQUE DE .NET
.NET STANDARD
7
.NET SUR LE MARCHÉ
Philosophie .NET
.NET FRAMEWORK
• SPÉCIFICATIONS LIBRES (UTILISÉES PAR MONO,
XAMARIN)
• INTEROPÉRABILITÉ (JAVA.NET, IRONPYTHON)
• TOUT EN UN
• WINDOWS UNIQUEMENT, LINUX VIA MONO
• SOURCE PRIVÉE
• COMMUNAUTAIRE
.NET CORE
• SPÉCIFICATIONS LIBRES
• INTEROPÉRABILITÉ
• MODULAIRE
• CROSS-PLATFORM (WINDOWS, LINUX, RASPBERRY,
DOCKER, CLOUD, …)
• OPEN SOURCE (.NET CORE, .NET STANDARD)
• ENCORE PLUS COMMUNAUTAIRE
8
9
PHILOSOPHIE .NET
.NET FOUNDATION
10
OUTILS POUR .NET CORE
Visual Studio Dotnet CLI
Nuget IntelliJ Rider
VS Code
11
HELLO WORLD ?
NOTRE PREMIÈRE APPLICATION WEB
ARCHITECTURE ET LIBRAIRIES
12
13
• Models
• Views
• Controllers
• Services
• ViewModels
• ViewComponents
• TagHelpers
ARCHITECTURE APPLICATIVE
MVC
14
• Classes porteuses de propriétés (Entités)
• Intégration avec EntityFramework
ARCHITECTURE APPLICATIVE
MODELS
15
• Templates RAZOR (optionnel, fortement typées)
• Supportent l’injection de dépendances (services)
• Embarquent un grand nombre d’automatisations
• Supporte des « vues partielles »
ARCHITECTURE APPLICATIVE
VIEWS
16
• Classe
• Actions (Méthodes)
• Attributs
• Injection de dépendances
ARCHITECTURE APPLICATIVE
CONTROLLERS
17
• Implémentation d’un contrat (Interface)
• Service Identity
ARCHITECTURE APPLICATIVE
SERVICES
18
• Représentation d’un modèle dans une vue
• Attributs pour les règles métier
• Contrôle automatique par le Controller
• Sert au typage des vues
ARCHITECTURE APPLICATIVE
VIEWMODELS
19
• Composant applicatif
• Plusieurs vues
• Injection de dépendances
ARCHITECTURE APPLICATIVE
VIEWCOMPONENTS
20
ARCHITECTURE APPLICATIVE
• Générateur de code front-end
• Prédéfinis ou personnalisés
• Peut être utilisé dans un ViewComponent
• Cible une balise HTML ou un attribut
TAGHELPERS
21
LIBRAIRIES
PAR MICROSOFT ET LA COMMUNAUTÉ
LightInject
Entity
Framework Core
Identity Json.NET
ImageSharp log4net
Et 32000+ APIs (12000+ en 1.0)
22
DÉMO
WEB API ET PORTABILITÉ
UN ŒIL SUR REST, LES JSS ET LE MOBILE
23
24
• Ensemble de helpers
• Prend en charge les réponses HTTP
REST EN .NET CORE
25
• Lien fort entre .NET et JS
• Permet exécution de JS côté serveur
• Peut servir pour pré-rendu React et Angular
JAVASCRIPT SERVICES
26
JAVASCRIPT SERVICES
27
JAVASCRIPT SERVICES
28
• .NET Standard 2.0
• Partage des entités entre les solutions
MOBILITÉ ET PORTABILITÉ
29
DÉMO
NOUVEAUTÉS ATTENDUES EN 2.1
SIGNALR, WEBHOOKS, TESTS FONCTIONNELS
30
31
SIGNALR
• RPC
• Natif en 2.1.0
• Client JS via NPM
• Plus de dépendance à jQuery
FRAMEWORK D’APPLICATIONS EN TEMPS-RÉEL
32
SIGNALR
FRAMEWORK D’APPLICATIONS EN TEMPS-RÉEL
33
• Différents WebHooks prédéfinis : Github, Azure, Slack
WordPress, etc
• Récupérer des notifications
WEBHOOKS
34
• Gérés par Xunit
• Fixtures pour simuler un serveur
TESTS FONCTIONNELS
35
AUTRES NOUVEAUTÉS
• Razor UI
• Identity as UI
• GDPR (HTTPS plus simple, Cookie Consent, …)
• Améliorations EF Core
• Intégration IIS simplifiée
36
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 ?
38
ALLONS PRENDRE UN VERRE !

Contenu connexe

Similaire à LTA : Découverte de .NET Core

Guspqc oct 2018 #msignite news dev
Guspqc oct 2018  #msignite news devGuspqc oct 2018  #msignite news dev
Guspqc oct 2018 #msignite news devVincent Biret
 
Formation d'architecte logiciel AFCEPF
Formation d'architecte logiciel AFCEPFFormation d'architecte logiciel AFCEPF
Formation d'architecte logiciel AFCEPFBoubker ABERWAG
 
Introduction à DotNetNuke
Introduction à DotNetNukeIntroduction à DotNetNuke
Introduction à DotNetNukeMicrosoft
 
Portails Etat De L'art
Portails  Etat De L'artPortails  Etat De L'art
Portails Etat De L'artTugdual Grall
 
Design applicatif avec symfony2
Design applicatif avec symfony2Design applicatif avec symfony2
Design applicatif avec symfony2RomainKuzniak
 
DotNetNuke aux TechDays 2012
DotNetNuke aux TechDays 2012DotNetNuke aux TechDays 2012
DotNetNuke aux TechDays 2012Cyril P
 
Visual Basic 9.0 – Visual Studio 2008 Quoi De Neuf 2.0
Visual Basic 9.0 – Visual Studio 2008 Quoi De Neuf 2.0Visual Basic 9.0 – Visual Studio 2008 Quoi De Neuf 2.0
Visual Basic 9.0 – Visual Studio 2008 Quoi De Neuf 2.0Gregory Renard
 
De l'open source à l'open API avec Restlet
De l'open source à l'open API avec RestletDe l'open source à l'open API avec Restlet
De l'open source à l'open API avec RestletJerome Louvel
 
Architecturez vos applications mobiles avec Azure et Xamarin
Architecturez vos applications mobiles avec Azure et XamarinArchitecturez vos applications mobiles avec Azure et Xamarin
Architecturez vos applications mobiles avec Azure et XamarinThierry Buisson
 
Front end, une île qui mérite d'être visitée
Front end, une île qui mérite d'être visitéeFront end, une île qui mérite d'être visitée
Front end, une île qui mérite d'être visitéeOuadie LAHDIOUI
 
Introduction à meteor
Introduction à meteorIntroduction à meteor
Introduction à meteorFabian Vilers
 
SharePoint Framework : le développement SharePoint nouvelle génération
SharePoint Framework : le développement SharePoint nouvelle générationSharePoint Framework : le développement SharePoint nouvelle génération
SharePoint Framework : le développement SharePoint nouvelle générationMicrosoft Technet France
 
Migration de technologie J2EE vers PHP à M6Web
Migration de technologie J2EE vers PHP à M6WebMigration de technologie J2EE vers PHP à M6Web
Migration de technologie J2EE vers PHP à M6WebOlivier NOEL
 
8 Rex : Mise en place de DevOps sur Azure
8   Rex : Mise en place de DevOps sur Azure8   Rex : Mise en place de DevOps sur Azure
8 Rex : Mise en place de DevOps sur AzureaOS Community
 
Cartographie - cas concrets et bonnes pratiques de développement
Cartographie - cas concrets et bonnes pratiques de développementCartographie - cas concrets et bonnes pratiques de développement
Cartographie - cas concrets et bonnes pratiques de développementNicolas Boonaert
 
Conteneuriser une application .NET 8 en utilisant Docker et Azure.pdf
Conteneuriser une application .NET 8 en utilisant Docker et Azure.pdfConteneuriser une application .NET 8 en utilisant Docker et Azure.pdf
Conteneuriser une application .NET 8 en utilisant Docker et Azure.pdfHamida Rebai Trabelsi
 
Softfluent speig mdday2010
Softfluent speig mdday2010Softfluent speig mdday2010
Softfluent speig mdday2010MD DAY
 

Similaire à LTA : Découverte de .NET Core (20)

CV REBAI Hamida
CV REBAI HamidaCV REBAI Hamida
CV REBAI Hamida
 
Guspqc oct 2018 #msignite news dev
Guspqc oct 2018  #msignite news devGuspqc oct 2018  #msignite news dev
Guspqc oct 2018 #msignite news dev
 
Formation d'architecte logiciel AFCEPF
Formation d'architecte logiciel AFCEPFFormation d'architecte logiciel AFCEPF
Formation d'architecte logiciel AFCEPF
 
Introduction à DotNetNuke
Introduction à DotNetNukeIntroduction à DotNetNuke
Introduction à DotNetNuke
 
Portails Etat De L'art
Portails  Etat De L'artPortails  Etat De L'art
Portails Etat De L'art
 
Design applicatif avec symfony2
Design applicatif avec symfony2Design applicatif avec symfony2
Design applicatif avec symfony2
 
DotNetNuke aux TechDays 2012
DotNetNuke aux TechDays 2012DotNetNuke aux TechDays 2012
DotNetNuke aux TechDays 2012
 
Visual Basic 9.0 – Visual Studio 2008 Quoi De Neuf 2.0
Visual Basic 9.0 – Visual Studio 2008 Quoi De Neuf 2.0Visual Basic 9.0 – Visual Studio 2008 Quoi De Neuf 2.0
Visual Basic 9.0 – Visual Studio 2008 Quoi De Neuf 2.0
 
De l'open source à l'open API avec Restlet
De l'open source à l'open API avec RestletDe l'open source à l'open API avec Restlet
De l'open source à l'open API avec Restlet
 
Support JEE Spring Inversion de Controle IOC et Spring MVC
Support JEE Spring Inversion de Controle IOC et Spring MVCSupport JEE Spring Inversion de Controle IOC et Spring MVC
Support JEE Spring Inversion de Controle IOC et Spring MVC
 
Architecturez vos applications mobiles avec Azure et Xamarin
Architecturez vos applications mobiles avec Azure et XamarinArchitecturez vos applications mobiles avec Azure et Xamarin
Architecturez vos applications mobiles avec Azure et Xamarin
 
Front end, une île qui mérite d'être visitée
Front end, une île qui mérite d'être visitéeFront end, une île qui mérite d'être visitée
Front end, une île qui mérite d'être visitée
 
Introduction à meteor
Introduction à meteorIntroduction à meteor
Introduction à meteor
 
SharePoint Framework : le développement SharePoint nouvelle génération
SharePoint Framework : le développement SharePoint nouvelle générationSharePoint Framework : le développement SharePoint nouvelle génération
SharePoint Framework : le développement SharePoint nouvelle génération
 
Migration de technologie J2EE vers PHP à M6Web
Migration de technologie J2EE vers PHP à M6WebMigration de technologie J2EE vers PHP à M6Web
Migration de technologie J2EE vers PHP à M6Web
 
8 Rex : Mise en place de DevOps sur Azure
8   Rex : Mise en place de DevOps sur Azure8   Rex : Mise en place de DevOps sur Azure
8 Rex : Mise en place de DevOps sur Azure
 
jQuery mobile vs Twitter bootstrap
jQuery mobile vs Twitter bootstrapjQuery mobile vs Twitter bootstrap
jQuery mobile vs Twitter bootstrap
 
Cartographie - cas concrets et bonnes pratiques de développement
Cartographie - cas concrets et bonnes pratiques de développementCartographie - cas concrets et bonnes pratiques de développement
Cartographie - cas concrets et bonnes pratiques de développement
 
Conteneuriser une application .NET 8 en utilisant Docker et Azure.pdf
Conteneuriser une application .NET 8 en utilisant Docker et Azure.pdfConteneuriser une application .NET 8 en utilisant Docker et Azure.pdf
Conteneuriser une application .NET 8 en utilisant Docker et Azure.pdf
 
Softfluent speig mdday2010
Softfluent speig mdday2010Softfluent speig mdday2010
Softfluent speig mdday2010
 

LTA : Découverte de .NET Core

Notes de l'éditeur

  1. 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.7.1: Net Standard 2.0 MAJ tous les 12 à 14 mois Depuis 2.0, ajout de fonc Fwk de + en + lourd
  2. Classement tiobe
  3. Ajouter screenshots VS => RAD (Rapid Application Development)
  4. WebSockets Server-Sent Events Forever Frame (IE) AJAX Long Polling