tech.days 2015#mstechdays
Innovation pour le présent et le
futur
Mise à jour continues et modulaires
Transparent, ouvert
Innovation .NET
Flexibilité et agilité
Ouverture
Notre nouvelle approche
OSS
.NET
tech.days 2015#mstechdays
Ouverture
CommonRuntime Compilateurs LibrairiesNext gen JIT (“RyuJIT”)
SIMD (Données en parallèle)
NET Compiler Platform (“Roslyn”)
Innovation des langages
BCL et PCL
Entity Framework
Optimisé pour les appareils mobiles
• Compilation native
• Epreinte réduite, côte à côte
• Prêt pour tout appareils
Optimisé pour le cloud/serveurs
• Haut débit
• Epreinte réduite, côte à côte
• Prêt pour tout appareils
Windows Store, WPF, Windows Forms, App Console, etc..
ASP.NET 5 et ASP.4.6 (Web Form, MVC, WebPage, Web Api, SignalR), WCF
#mstechdays techdays.microsoft.fr
Visual Studio 2015 et le Framework .NET 4.6
Antoine [email protected]
@antoinediekmann
tech.days 2015#mstechdays
Compilateur .NET (“Roslyn”)
DeCompilateurs fermés
Difficile a étendre
C#, VBSource code
.exe/.dilIL assemblies
Compilateurs .NET actuels
VersAPI: Plate-forme ouverte
IDE Riche
Refactorisation
Analyse de code
Diagnostiques personnalisés
Compilateur Open Source.NET Compilers Platform
(a.k.a. ROSLYN)
C#, VBSource code
.exe/.dilIL assemblies
Plate-forme ouverte pour les développeurs
tech.days 2015#mstechdays
+ de Performances
tech.days 2015#mstechdays
tech.days 2015#mstechdays
+ de Performances
tech.days 2015#mstechdays
SIMD est exposé
public struct Vector<T> where T : struct{
public Vector(T value);public Vector(T[] values);public Vector(T[] values, int index);public static int Length { get; }public T this[int index] { get; }// With SIMD, these element wise operations are done in parallel:public static Vector<T> operator +(Vector<T> left, Vector<T> right);public static Vector<T> operator *(Vector<T> left, Vector<T> right);// ...
}
Longueur est fixe,
mais dépendant du
hardware
float[] values = GetValues();
float increment = GetIncrement();
float[] result = new float[values.Length]
// Perform addition as manual loop:
for (int i = 0; i < values.Length; i++) {
values[i] += increment;
}
Vector<float> values = GetValues();
Vector<float> increment = GetIncrement();
// Perform addition as vector operation:
Vector<float> result = values + increment;
SIMD utilisation dans du code
Code non vectoriel, calcule d’une
valeur à la fois
En utilisant Vector<T>
on calcule de multiples
valeurs en une seule
passe simultanément.
tech.days 2015#mstechdays
tech.days 2015#mstechdays
.Net Framework .Net Core Avantages
Complet Modulaire • Léger, optimisé
• Versionnement par module
MachineApplication
(packages nuget)
• Local à l’application
• Exécution de versions
différentes sur la même
machine
Celle du .Net
FrameworkLibre
Nouveautés disponibles +
rapidement
Oui NonNouveautés utilisables +
rapidement
Installer le .Net
FrameworkL’app s’auto-suffit Souplesse d’hébergement
tech.days 2015#mstechdays
.Net Framework .Net Core Avantage
Windows
Windows
Linux
Mac
NonOui
(GitHub)
• X-Plat : Bénéficier de l’expérience des
communautés open-source sur les autres
plateformes (Mono, …)
• Cycle de detection de bugs & fix + rapides
• Pas de cloisonnement
tech.days 2015#mstechdays
Runtime construit sur la même base que le .Net Framework (même GC, RyuJIT)
BCL de .Net Framework refactorépour supprimer les inter-dépendances
tech.days 2015#mstechdays
Indépendant de l’éditeur
Open Source
avec contributionsCross-PlatformOSS
Cloud-ready
Cycles de développement
optimisésTotalement modulaire
Performant
#mstechdays techdays.microsoft.fr
.NET NativeProductivité C#, Puissance de C++
Jonathan [email protected]
@jmix90
tech.days 2015#mstechdays
Un outil qui transforme votre code C# en un
exécutable natif ultra optimisé!
La productivité de .NET
… les performances de C++ !
tech.days 2015#mstechdays
Compilateur C++ et Runtime optimiséPerformances
C# + Visual Studio + développeurs =ProductivitéC#
Tout est embarqué, sans dépendanceIndépendance
Uniquement le code utilisé est embarquéEmpreinte mémoire
tech.days 2015#mstechdays
tech.days 2015#mstechdays
Applications Windows Store x64 et ARM
… Compilation automatique dans le Cloud !
Prochaines versions : desktop et serveur
tech.days 2015#mstechdays
Ces APIs fonctionnent toujours :
Réflexion
Garbage Collector (Runtime MRT 100)
Génériques
Binding
Dans les scenarii spécifiques : configuration possible
Démo
tech.days 2015#mstechdays
Démo
Disponible dans les CTP VS 2015
tech.days 2015#mstechdays
tech.days 2015#mstechdays
Le code source comme source de Documentation
http://aka.ms/cjvesl
http://www.dotnetfoundation.org/
tech.days 2015#mstechdays
48%
52%
CONTRIBUTION
Internes Externes
25%
75%
LIBRAIRIES
Publié sur GitHub Non publié encore
tech.days 2015#mstechdays
La fondation .NET
.NET API for Hadoop WebClient
.NET Compiler Platform ("Roslyn").NET Map Reduce API for Hadoop
.NET Micro Framework
ASP.NET MVC
ASP.NET Web API
ASP.NET Web Pages
ASP.NET SignalR
Composition (MEF2)
Entity Framework
Linq to Hive
MEF (Managed Extensibility Framework)
OWIN Authentication Middleware
Rx (Reactive Extensions)
Web Protection Library
Windows Azure .NET SDK
Windows Phone Toolkit
WnsRecipe
Mimekit Xamarin.Auth
Xamarin.Mobile
Couchbase for .NET
Miguel de Icaza (Xamarin)
Laurent Bugnion (IdentityMine)
Niels Hartvig (Umbraco)
Anthony van der Hoorn (Glimpse)
Paul Betts (GitHub)
Nigel Sampson (Compiled Experience)
http://www.dotnetfoundation.org
Mailkit
System.Drawing
.NET 2015 une nouvelle ère
Nouveautés C# 6
ASP.NET 5 .NET sur Linux
Visual Studio 2015
ASP.NET MVC 6
Entity Framework 7.0
Cortana
Kinect for Windows V2
Introduction aux applications universelles
ASP.NET Web API & Azure API Management
Développer des applications Windows Store pour l'entreprise
Développement cross-plateforme sans compromis avec Xamarin
ASP.Net 5: la révolution est en marche
tech.days 2015#mstechdays
Ressourceshttp://aka.ms/RyuJITinfo http://aka.ms/RyuJIT
http://aka.ms/SIMDInfo http://aka.ms/SIMD
http://aka.ms/NETCompilerPlatformhttps://github.com/dotnet/roslyn
http://aka.ms/NetCompilerPlatformDownload
http://aka.ms/azuremobileservicesnet http://aka.ms/VS2013Update2
http://aka.ms/VS2013Update2Info http://aka.ms/VS2013Update2
http://aka.ms/universalprojects http://aka.ms/VS2013Update2
http://aka.ms/dotnetnative http://aka.ms/dotnetnativedownload
http://xamarin.com http://xamarin.com
http://www.dotnetfoundation.org
© 2015 Microsoft Corporation. All rights reserved.
tech days•
2015
#mstechdays techdays.microsoft.fr