SlideShare une entreprise Scribd logo
1  sur  35
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 ?

Contenu connexe

Similaire à Be Zend : Découverte de .NET Core

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
 
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir ArezkiGab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir ArezkiAZUG FR
 
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir ArezkiGab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir ArezkiSamir Arezki ☁
 
Découverte .Net Core et Asp.Net Core
Découverte .Net Core et Asp.Net CoreDécouverte .Net Core et Asp.Net Core
Découverte .Net Core et Asp.Net CoreIonut Mihalcea
 
SUSE Expert Days Paris 2018 – Sécurité et Gestion des Systèmes
SUSE Expert Days Paris 2018 – Sécurité et Gestion des SystèmesSUSE Expert Days Paris 2018 – Sécurité et Gestion des Systèmes
SUSE Expert Days Paris 2018 – Sécurité et Gestion des SystèmesSUSE
 
Paris Test conf - Kevin Roulleau - E2E tests on mobile native app, a successf...
Paris Test conf - Kevin Roulleau - E2E tests on mobile native app, a successf...Paris Test conf - Kevin Roulleau - E2E tests on mobile native app, a successf...
Paris Test conf - Kevin Roulleau - E2E tests on mobile native app, a successf...kevinroulleau
 
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
 
Introduction à DotNetNuke
Introduction à DotNetNukeIntroduction à DotNetNuke
Introduction à DotNetNukeMicrosoft
 
DotNetNuke aux TechDays 2012
DotNetNuke aux TechDays 2012DotNetNuke aux TechDays 2012
DotNetNuke aux TechDays 2012Cyril P
 
Serverless avec Azure Functions & Logic Apps
Serverless avec Azure Functions & Logic AppsServerless avec Azure Functions & Logic Apps
Serverless avec Azure Functions & Logic AppsSamir Arezki ☁
 
Guspqc oct 2018 #msignite news dev
Guspqc oct 2018  #msignite news devGuspqc oct 2018  #msignite news dev
Guspqc oct 2018 #msignite news devVincent Biret
 
Apéro techno node.js + AngularJS @Omnilog 2014
Apéro techno node.js + AngularJS @Omnilog 2014Apéro techno node.js + AngularJS @Omnilog 2014
Apéro techno node.js + AngularJS @Omnilog 2014Yves-Emmanuel Jutard
 
Formation d'architecte logiciel AFCEPF
Formation d'architecte logiciel AFCEPFFormation d'architecte logiciel AFCEPF
Formation d'architecte logiciel AFCEPFBoubker ABERWAG
 
Au cœur du Framework .NET 4.5.1
Au cœur du Framework .NET 4.5.1Au cœur du Framework .NET 4.5.1
Au cœur du Framework .NET 4.5.1Microsoft
 
Pourquoi rails est génial? (version longue)
Pourquoi rails est génial? (version longue)Pourquoi rails est génial? (version longue)
Pourquoi rails est génial? (version longue)Camille Roux
 
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
 
Quoi de neuf à Devoxx France 2017 ?
Quoi de neuf à Devoxx France 2017 ?Quoi de neuf à Devoxx France 2017 ?
Quoi de neuf à Devoxx France 2017 ?Antoine Rey
 
Calculus System Academy:Devenez un développeur Full stack
Calculus System Academy:Devenez un développeur Full stackCalculus System Academy:Devenez un développeur Full stack
Calculus System Academy:Devenez un développeur Full stackCalculus System SARL
 
Lost in serverless AWS Lambda, Google Cloud Function, Azure Function quelle s...
Lost in serverless AWS Lambda, Google Cloud Function, Azure Function quelle s...Lost in serverless AWS Lambda, Google Cloud Function, Azure Function quelle s...
Lost in serverless AWS Lambda, Google Cloud Function, Azure Function quelle s...sebastienmoreno
 

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

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
 
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir ArezkiGab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
 
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir ArezkiGab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
 
Découverte .Net Core et Asp.Net Core
Découverte .Net Core et Asp.Net CoreDécouverte .Net Core et Asp.Net Core
Découverte .Net Core et Asp.Net Core
 
SUSE Expert Days Paris 2018 – Sécurité et Gestion des Systèmes
SUSE Expert Days Paris 2018 – Sécurité et Gestion des SystèmesSUSE Expert Days Paris 2018 – Sécurité et Gestion des Systèmes
SUSE Expert Days Paris 2018 – Sécurité et Gestion des Systèmes
 
Paris Test conf - Kevin Roulleau - E2E tests on mobile native app, a successf...
Paris Test conf - Kevin Roulleau - E2E tests on mobile native app, a successf...Paris Test conf - Kevin Roulleau - E2E tests on mobile native app, a successf...
Paris Test conf - Kevin Roulleau - E2E tests on mobile native app, a successf...
 
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
 
jQuery mobile vs Twitter bootstrap
jQuery mobile vs Twitter bootstrapjQuery mobile vs Twitter bootstrap
jQuery mobile vs Twitter bootstrap
 
Introduction à DotNetNuke
Introduction à DotNetNukeIntroduction à DotNetNuke
Introduction à DotNetNuke
 
DotNetNuke aux TechDays 2012
DotNetNuke aux TechDays 2012DotNetNuke aux TechDays 2012
DotNetNuke aux TechDays 2012
 
Serverless avec Azure Functions & Logic Apps
Serverless avec Azure Functions & Logic AppsServerless avec Azure Functions & Logic Apps
Serverless avec Azure Functions & Logic Apps
 
Guspqc oct 2018 #msignite news dev
Guspqc oct 2018  #msignite news devGuspqc oct 2018  #msignite news dev
Guspqc oct 2018 #msignite news dev
 
Apéro techno node.js + AngularJS @Omnilog 2014
Apéro techno node.js + AngularJS @Omnilog 2014Apéro techno node.js + AngularJS @Omnilog 2014
Apéro techno node.js + AngularJS @Omnilog 2014
 
Formation d'architecte logiciel AFCEPF
Formation d'architecte logiciel AFCEPFFormation d'architecte logiciel AFCEPF
Formation d'architecte logiciel AFCEPF
 
Au cœur du Framework .NET 4.5.1
Au cœur du Framework .NET 4.5.1Au cœur du Framework .NET 4.5.1
Au cœur du Framework .NET 4.5.1
 
Pourquoi rails est génial? (version longue)
Pourquoi rails est génial? (version longue)Pourquoi rails est génial? (version longue)
Pourquoi rails est génial? (version longue)
 
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
 
Quoi de neuf à Devoxx France 2017 ?
Quoi de neuf à Devoxx France 2017 ?Quoi de neuf à Devoxx France 2017 ?
Quoi de neuf à Devoxx France 2017 ?
 
Calculus System Academy:Devenez un développeur Full stack
Calculus System Academy:Devenez un développeur Full stackCalculus System Academy:Devenez un développeur Full stack
Calculus System Academy:Devenez un développeur Full stack
 
Lost in serverless AWS Lambda, Google Cloud Function, Azure Function quelle s...
Lost in serverless AWS Lambda, Google Cloud Function, Azure Function quelle s...Lost in serverless AWS Lambda, Google Cloud Function, Azure Function quelle s...
Lost in serverless AWS Lambda, Google Cloud Function, Azure Function quelle s...
 

Be Zend : 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.0: Parallélisme multi-core ou distribué (arrivé multicoeurs) 4.7.1: Net Standard 2.0
  2. Classement tiobe
  3. Ajouter screenshots VS => RAD (Rapid Application Development)