SlideShare ist ein Scribd-Unternehmen logo
1 von 52
MS Day EPITA Visual Studio 2010 et 	.NET Framework 4 Thomas Conté Architecte Microsoft
Présentations http://fr.linkedin.com/in/tomconte http://twitter.com/tomconte http://blogs.msdn.com/b/thomasconte/ http://www.facebook.com/#!/thomas.conte http://blogs.msdn.com/b/tconte/ http://dotpunk.wordpress.com/ http://www.conté.com/ Thomas Conté EPITA promo 95 (SR) Architecte DPE chez Microsoft
Un peu d’histoire…
.NET Framework 1.0 First public beta at PDC 2000 RTM: early 2002 Introduced the world to “managed code” GC, JIT C# Coherent Framework XSP….ASP+…ASP.NET! WinForms
.NET Framework 1.1 RTM Early 2003 “managed code” mainstream Ships in Windows Server 2003 Rounds out features
.NET Framework 2.0 RTM Late 2005 ASP.NET for the Masses Application Building Blocks Parts, Authentication, Role Management, etc Visual Web Developer Client Development ClickOnce!
.NET Framework 3.0 RTM end of 2006 Windows Presentation Foundation Vector Graphics, Media and UI Enters the age of UX Windows Communication Foundation Unified messaging model  Windows Workflow Foundation Coordinating work with durable applications
.NET Framework 3.5 RTM End of 2007 Linq ASP.NET AJAX WCF/WF  REST Services Workflow Services Client Sync Client app services
.NET Framework 3.5 "SP1" RTM Mid 2008 ASP.NET Dynamic Data ADO.NET Entity Framework Data Services (Astoria) WCF AtomPubServiceDocuments Client Client Profile Performance Working set and startup time
.NET Framework Current "Layer Cake" .NET Framework 3.5 + SP1 Entity Framework Dynamic Data Data Services .NET Framework 3.5 Add-in  Framework LINQ WF & WCF Enhancements Additional Enhancements .NET Framework 3.0 + SP1 Windows Presentation Foundation Windows Communication Foundation Windows Workflow Foundation  Windows CardSpace .NET Framework 2.0 + SP1
Un peu d’histoire… SP1 3.5 3.0 .NET 1.0 .NET 1.1 .NET 2.0 .NET 4 2002 2003 2008 CTP 2005-08 CLR 1.0 CLR 1.1 CLR 2.0 CLR 4
Le .NET Framework WPF Win Forms DLR ASP.NET WCF And more! LINQ Base Class Libraries The CLR JIT & NGEN Garbage Collector Security Model Exception Handling Loader & Binder
Applications Client Applications Web WPF 4 MEF Web Forms 4 AJAX 4 Client/Server WCF 4
Les Bases… Parallel Computing Data Access Runtime DLR Integration Type Equivalence In-Process SxS Task Parallel Library Parallel LINQ Entity Framework 4 Data Services 1.5
Web Forms 4 - Client ID 1) User Control (No ID) 2) User Control (“HeaderForm”) Control Hierarchy 3) Drop Down List (“States”) Resulting Client IDs: ctl00 ctl00_HeaderForm ctl00_HeaderForm_States
Web Forms 4 - Routing ASP.NET Routing Route: Product/{name} -> Product.aspx Request: Products/Bikes WebForms Page File Name: Product.aspx Route Values: Name = “Bikes” Response
ASP.NET Web Forms 4Client Id / Routing
WPF 4 Data Grid Ribbon Multi-Touch Windows 7 Enhancements
Managed Extensibility Framework? The Managed Extensibility Framework (MEF) is a new libraryin the .NET Framework that enables greater reuse of applications and components. Using MEF, .NET applications can make the shift from being statically compiled to dynamically composed
Open/Closed Principle Software entities should be  open for extension,  but closed for modification.
Known   vs.     Unknown
Client ApplicationsWPF 4 DataGrid / MEF
Entity Framework 4 Model-First  POCO Lazy Loading Foreign Keys
A lot of new for WF/WCF 4 XAML-only workflows are the new default Unified model between WF, WCF, and WPF Extended base activity library Simplified WF programming model Support for arguments, variables, expressions Major improvements to WCF integration Runtime and designer improvements Service discovery for WCF Hosting & management via "Dublin“
ADO.NET Data Services 1.5 Server Enhancements Row count Server-side paging Friendly feeds BLOB streams Client Enhancements Row Count WPF/SL data binding
ADO.NET Data ServicesRow Count andServer-Side Paging
Parallel Computing Initiative Avant:Horloges plus rapides Maintenant: Plus de coeurs Fini de rigoler!
The Parallel Computing Initiative Letting the brightest developers solve business problems, not concurrency problems. ”Concurrency for the masses”
Parallel Computing with .NET 4 Task Parallel Library (TPL) Parallel LINQ (PLINQ) Coordination Data Structures (CDS) System.Threading Improvements
Parallel LINQ Parallel LINQ (PLINQ)enables developers to easily leverage manycore with a minimal impactto existing LINQ programming model var q = from p in people         where p.Name == queryInfo.Name &&  p.State == queryInfo.State && p.Year >= yearStart && p.Year <= yearEnd         orderbyp.Year ascending         select p; .AsParallel()
Parallel ComputingParallel LINQ (PLINQ)
Dynamically-Typed Ruby Python Statically-Typed VB C# Common Language Runtime Why the DLR?
Dynamically-Typed Ruby Python Statically-Typed VB Dynamic Language Runtime C# Common Language Runtime Why the DLR?
.NET Dynamic Programming IronPython IronRuby C# VB.NET Others… Dynamic Language Runtime Expression Trees Dynamic Dispatch Call Site Caching PythonBinder RubyBinder COMBinder JScriptBinder ObjectBinder
Dynamically Typed Objects Calculator calc = GetCalculator(); int sum = calc.Add(10, 20); object calc = GetCalculator(); TypecalcType = calc.GetType(); object res = calcType.InvokeMember("Add", BindingFlags.InvokeMethod, null, newobject[] { 10, 20 }); int sum = Convert.ToInt32(res); ScriptObject calc = GetCalculator(); object res = calc.Invoke("Add", 10, 20); int sum = Convert.ToInt32(res); Statically typed to be dynamic dynamic calc = GetCalculator(); int sum = calc.Add(10, 20); Dynamic method invocation Dynamic conversion
DLR Integration
Type Equivalence Interop Assemblies translate between managed code and COM For each interface, struct, enum,  delegate, and member, contains a  managed equivalent with marshalling data
However! Primary Interop Assemblies cause many pain points…
Go Away, PIA! Compilers embedthe portions of the interop assemblies that the add-ins actually use Runtime ensures the embedded definitions of these types are considered equivalent
CLR 4Type Equivalence
.NET Framework Compatibility .NET 4.0 is a highly compatible release .NET 4.0 does not auto–roll forward You must add a configuration file with a specific switch to get 3.5 apps to run on 4.0
.NET Framework Compatibility Hang on… if 4.0 is compatible, why not run 3.5 apps automatically on 4.0? The BEST thing is always to prefer running on the version of the framework you built against
CLR 2 - Existing Side-By-Side 2.0 add-in 3.0 add-in 3.5 add-in 1.1 add-in 3.5 .NET 1.1 3.0 .NET 2.0 Host Process (i.e. Outlook)
CLR 4 - In-Process Side-By-Side 2.0 add-in 3.0 add-in 3.5 add-in 4.0 add-in 3.5 .NET 4.0 3.0 .NET 2.0 Host Process (i.e. Outlook)
Visual Studio 2010 Training Kit Download at http://tinyurl.com/vs2010trainingkit
Windows Phone 7
Silverlight Modern application UI framework & runtime Rapid creation of visually stunning apps METRO themed UI controls, defined in XAML XAML, C#, HTML & JavaScript 500,000 developers spanning Windows and Web Rich media support
Developer tools
http://www.microsoft.com/visualstudio/en-us/lightswitch The simplest way to build business applications for the desktop and cloud.
Data Business Applications + = Screens
ETUDIANTS.MS Les initiatives de Microsoft pour les étudiants

Weitere ähnliche Inhalte

Was ist angesagt?

Rails Girls - Introduction to HTML & CSS
Rails Girls - Introduction to HTML & CSSRails Girls - Introduction to HTML & CSS
Rails Girls - Introduction to HTML & CSSTimo Herttua
 
HTML5 for PHP Developers - IPC
HTML5 for PHP Developers - IPCHTML5 for PHP Developers - IPC
HTML5 for PHP Developers - IPCMayflower GmbH
 
Daniel Egan Msdn Tech Days Oc Day2
Daniel Egan Msdn Tech Days Oc Day2Daniel Egan Msdn Tech Days Oc Day2
Daniel Egan Msdn Tech Days Oc Day2Daniel Egan
 
.NET Framework Overview
.NET Framework Overview.NET Framework Overview
.NET Framework OverviewDoncho Minkov
 
Dotnet Basics Presentation
Dotnet Basics PresentationDotnet Basics Presentation
Dotnet Basics PresentationSudhakar Sharma
 
Eclipsist2009 Rich Client Roundup
Eclipsist2009 Rich Client RoundupEclipsist2009 Rich Client Roundup
Eclipsist2009 Rich Client RoundupMurat Yener
 
Web II - 01 - Introduction to server-side development
Web II - 01 - Introduction to server-side developmentWeb II - 01 - Introduction to server-side development
Web II - 01 - Introduction to server-side developmentRandy Connolly
 
TechnoGeek training report
TechnoGeek training reportTechnoGeek training report
TechnoGeek training reportAnup Singh
 
project introduction
project introductionproject introduction
project introductionstinmon
 
Adobeflex(2)
Adobeflex(2)Adobeflex(2)
Adobeflex(2)tomcoh
 
C++ in Action Webinar: Move your C++ projects to C++Builder 10 Seattle
C++ in Action Webinar: Move your C++ projects to C++Builder 10 SeattleC++ in Action Webinar: Move your C++ projects to C++Builder 10 Seattle
C++ in Action Webinar: Move your C++ projects to C++Builder 10 SeattleDavid Intersimone
 
Introduction to .net framework
Introduction to .net frameworkIntroduction to .net framework
Introduction to .net frameworkArun Prasad
 

Was ist angesagt? (18)

Microsoft C# programming basics
Microsoft C# programming basics  Microsoft C# programming basics
Microsoft C# programming basics
 
Rails Girls - Introduction to HTML & CSS
Rails Girls - Introduction to HTML & CSSRails Girls - Introduction to HTML & CSS
Rails Girls - Introduction to HTML & CSS
 
A comprehensive software infrastructure of .Net
A comprehensive software infrastructure of .Net  A comprehensive software infrastructure of .Net
A comprehensive software infrastructure of .Net
 
HTML5 for PHP Developers - IPC
HTML5 for PHP Developers - IPCHTML5 for PHP Developers - IPC
HTML5 for PHP Developers - IPC
 
Daniel Egan Msdn Tech Days Oc Day2
Daniel Egan Msdn Tech Days Oc Day2Daniel Egan Msdn Tech Days Oc Day2
Daniel Egan Msdn Tech Days Oc Day2
 
.NET Framework Overview
.NET Framework Overview.NET Framework Overview
.NET Framework Overview
 
Dotnet Basics Presentation
Dotnet Basics PresentationDotnet Basics Presentation
Dotnet Basics Presentation
 
Eclipsist2009 Rich Client Roundup
Eclipsist2009 Rich Client RoundupEclipsist2009 Rich Client Roundup
Eclipsist2009 Rich Client Roundup
 
Mahmoud+Abd+ElHady-CV-2016
Mahmoud+Abd+ElHady-CV-2016Mahmoud+Abd+ElHady-CV-2016
Mahmoud+Abd+ElHady-CV-2016
 
Web II - 01 - Introduction to server-side development
Web II - 01 - Introduction to server-side developmentWeb II - 01 - Introduction to server-side development
Web II - 01 - Introduction to server-side development
 
Portfolio
PortfolioPortfolio
Portfolio
 
TechnoGeek training report
TechnoGeek training reportTechnoGeek training report
TechnoGeek training report
 
project introduction
project introductionproject introduction
project introduction
 
Adobeflex(2)
Adobeflex(2)Adobeflex(2)
Adobeflex(2)
 
Visual Studio
Visual StudioVisual Studio
Visual Studio
 
C++ in Action Webinar: Move your C++ projects to C++Builder 10 Seattle
C++ in Action Webinar: Move your C++ projects to C++Builder 10 SeattleC++ in Action Webinar: Move your C++ projects to C++Builder 10 Seattle
C++ in Action Webinar: Move your C++ projects to C++Builder 10 Seattle
 
OneTeam Media Server
OneTeam Media ServerOneTeam Media Server
OneTeam Media Server
 
Introduction to .net framework
Introduction to .net frameworkIntroduction to .net framework
Introduction to .net framework
 

Andere mochten auch

表单设计
表单设计表单设计
表单设计ico li
 
Tanzania Mission Slideshow
Tanzania Mission SlideshowTanzania Mission Slideshow
Tanzania Mission Slideshowtrheidt
 
Presentación sl y grupo esfera samfyc mayo 2010
Presentación sl y grupo esfera samfyc mayo 2010Presentación sl y grupo esfera samfyc mayo 2010
Presentación sl y grupo esfera samfyc mayo 2010Jose Antonio Prados
 
Minnette Davis - Professional Network Systems Engineer Accomplishments
Minnette Davis -  Professional Network Systems Engineer AccomplishmentsMinnette Davis -  Professional Network Systems Engineer Accomplishments
Minnette Davis - Professional Network Systems Engineer AccomplishmentsMinnette Davis
 
Why we are here on earth, serving death sentence
Why we are here on earth, serving death sentenceWhy we are here on earth, serving death sentence
Why we are here on earth, serving death sentenceMinnette Davis
 
网站优化指南V1 0
网站优化指南V1 0网站优化指南V1 0
网站优化指南V1 0ico li
 
用户后台界面分析
用户后台界面分析用户后台界面分析
用户后台界面分析ico li
 
网址中藏着的秘密
网址中藏着的秘密网址中藏着的秘密
网址中藏着的秘密ico li
 
Running Java workloads in Microsoft Azure
Running Java workloads in Microsoft AzureRunning Java workloads in Microsoft Azure
Running Java workloads in Microsoft AzureThomas Conté
 
活动专题设计
活动专题设计活动专题设计
活动专题设计ico li
 
Observations from HighEdWeb 2010
Observations from HighEdWeb 2010Observations from HighEdWeb 2010
Observations from HighEdWeb 2010Chas Grundy
 
Taphop diem thgap tren mp phuc
Taphop diem thgap tren mp phucTaphop diem thgap tren mp phuc
Taphop diem thgap tren mp phucSeri Moth
 
Jsphp 110312161301-phpapp02
Jsphp 110312161301-phpapp02Jsphp 110312161301-phpapp02
Jsphp 110312161301-phpapp02Seri Moth
 

Andere mochten auch (14)

表单设计
表单设计表单设计
表单设计
 
Tanzania Mission Slideshow
Tanzania Mission SlideshowTanzania Mission Slideshow
Tanzania Mission Slideshow
 
Presentación sl y grupo esfera samfyc mayo 2010
Presentación sl y grupo esfera samfyc mayo 2010Presentación sl y grupo esfera samfyc mayo 2010
Presentación sl y grupo esfera samfyc mayo 2010
 
Minnette Davis - Professional Network Systems Engineer Accomplishments
Minnette Davis -  Professional Network Systems Engineer AccomplishmentsMinnette Davis -  Professional Network Systems Engineer Accomplishments
Minnette Davis - Professional Network Systems Engineer Accomplishments
 
Why we are here on earth, serving death sentence
Why we are here on earth, serving death sentenceWhy we are here on earth, serving death sentence
Why we are here on earth, serving death sentence
 
网站优化指南V1 0
网站优化指南V1 0网站优化指南V1 0
网站优化指南V1 0
 
用户后台界面分析
用户后台界面分析用户后台界面分析
用户后台界面分析
 
网址中藏着的秘密
网址中藏着的秘密网址中藏着的秘密
网址中藏着的秘密
 
Running Java workloads in Microsoft Azure
Running Java workloads in Microsoft AzureRunning Java workloads in Microsoft Azure
Running Java workloads in Microsoft Azure
 
活动专题设计
活动专题设计活动专题设计
活动专题设计
 
Observations from HighEdWeb 2010
Observations from HighEdWeb 2010Observations from HighEdWeb 2010
Observations from HighEdWeb 2010
 
Taphop diem thgap tren mp phuc
Taphop diem thgap tren mp phucTaphop diem thgap tren mp phuc
Taphop diem thgap tren mp phuc
 
Jsphp 110312161301-phpapp02
Jsphp 110312161301-phpapp02Jsphp 110312161301-phpapp02
Jsphp 110312161301-phpapp02
 
Yii
YiiYii
Yii
 

Ähnlich wie VS 2010 EPITA MS Day Visual Studio 2010 .NET Framework 4

Visual Studio .NET2010
Visual Studio .NET2010Visual Studio .NET2010
Visual Studio .NET2010Satish Verma
 
Bn1001 demo ppt advance dot net
Bn1001 demo ppt advance dot netBn1001 demo ppt advance dot net
Bn1001 demo ppt advance dot netconline training
 
MSDN Presents: Visual Studio 2010, .NET 4, SharePoint 2010 for Developers
MSDN Presents: Visual Studio 2010, .NET 4, SharePoint 2010 for DevelopersMSDN Presents: Visual Studio 2010, .NET 4, SharePoint 2010 for Developers
MSDN Presents: Visual Studio 2010, .NET 4, SharePoint 2010 for DevelopersDave Bost
 
SharePoint for the .NET Developer
SharePoint for the .NET DeveloperSharePoint for the .NET Developer
SharePoint for the .NET DeveloperJohn Calvert
 
[CLPE] Novidades do .net Framework 4.0
[CLPE] Novidades do .net Framework 4.0[CLPE] Novidades do .net Framework 4.0
[CLPE] Novidades do .net Framework 4.0Felipe Pimentel
 
German introduction to sp framework
German   introduction to sp frameworkGerman   introduction to sp framework
German introduction to sp frameworkBob German
 
Silverlight 2 for Developers - TechEd New Zealand 2008
Silverlight 2 for Developers - TechEd New Zealand 2008Silverlight 2 for Developers - TechEd New Zealand 2008
Silverlight 2 for Developers - TechEd New Zealand 2008Jonas Follesø
 
SharePoint 2010 Client Object Model
SharePoint 2010 Client Object ModelSharePoint 2010 Client Object Model
SharePoint 2010 Client Object ModelG. Scott Singleton
 
Mike Taulty MIX10 Silverlight Frameworks and Patterns
Mike Taulty MIX10 Silverlight Frameworks and PatternsMike Taulty MIX10 Silverlight Frameworks and Patterns
Mike Taulty MIX10 Silverlight Frameworks and Patternsukdpe
 
Visual Studio.NET
Visual Studio.NETVisual Studio.NET
Visual Studio.NETsalonityagi
 
2008 - TechDays PT: Building Software + Services with Volta
2008 - TechDays PT: Building Software + Services with Volta2008 - TechDays PT: Building Software + Services with Volta
2008 - TechDays PT: Building Software + Services with VoltaDaniel Fisher
 
.NET Core Today and Tomorrow
.NET Core Today and Tomorrow.NET Core Today and Tomorrow
.NET Core Today and TomorrowJon Galloway
 
Unit - 1: ASP.NET Basic
Unit - 1:  ASP.NET BasicUnit - 1:  ASP.NET Basic
Unit - 1: ASP.NET BasicKALIDHASANR
 
ChuckRobledoBulletPoints
ChuckRobledoBulletPointsChuckRobledoBulletPoints
ChuckRobledoBulletPointsCharles Robledo
 
Novidades sobre o Silverlight 4
Novidades sobre o Silverlight 4Novidades sobre o Silverlight 4
Novidades sobre o Silverlight 4Luciano Condé
 

Ähnlich wie VS 2010 EPITA MS Day Visual Studio 2010 .NET Framework 4 (20)

Visual Studio .NET2010
Visual Studio .NET2010Visual Studio .NET2010
Visual Studio .NET2010
 
Bn1001 demo ppt advance dot net
Bn1001 demo ppt advance dot netBn1001 demo ppt advance dot net
Bn1001 demo ppt advance dot net
 
MSDN Presents: Visual Studio 2010, .NET 4, SharePoint 2010 for Developers
MSDN Presents: Visual Studio 2010, .NET 4, SharePoint 2010 for DevelopersMSDN Presents: Visual Studio 2010, .NET 4, SharePoint 2010 for Developers
MSDN Presents: Visual Studio 2010, .NET 4, SharePoint 2010 for Developers
 
SharePoint for the .NET Developer
SharePoint for the .NET DeveloperSharePoint for the .NET Developer
SharePoint for the .NET Developer
 
[CLPE] Novidades do .net Framework 4.0
[CLPE] Novidades do .net Framework 4.0[CLPE] Novidades do .net Framework 4.0
[CLPE] Novidades do .net Framework 4.0
 
German introduction to sp framework
German   introduction to sp frameworkGerman   introduction to sp framework
German introduction to sp framework
 
Silverlight 2 for Developers - TechEd New Zealand 2008
Silverlight 2 for Developers - TechEd New Zealand 2008Silverlight 2 for Developers - TechEd New Zealand 2008
Silverlight 2 for Developers - TechEd New Zealand 2008
 
SharePoint 2010 Client Object Model
SharePoint 2010 Client Object ModelSharePoint 2010 Client Object Model
SharePoint 2010 Client Object Model
 
Charles harper Resume
Charles harper ResumeCharles harper Resume
Charles harper Resume
 
Mike Taulty MIX10 Silverlight Frameworks and Patterns
Mike Taulty MIX10 Silverlight Frameworks and PatternsMike Taulty MIX10 Silverlight Frameworks and Patterns
Mike Taulty MIX10 Silverlight Frameworks and Patterns
 
Visual Studio.NET
Visual Studio.NETVisual Studio.NET
Visual Studio.NET
 
2008 - TechDays PT: Building Software + Services with Volta
2008 - TechDays PT: Building Software + Services with Volta2008 - TechDays PT: Building Software + Services with Volta
2008 - TechDays PT: Building Software + Services with Volta
 
Visual studio.net
Visual studio.netVisual studio.net
Visual studio.net
 
Srgoc dotnet_new
Srgoc dotnet_newSrgoc dotnet_new
Srgoc dotnet_new
 
Revealing C# 5
Revealing C# 5Revealing C# 5
Revealing C# 5
 
.NET Core Today and Tomorrow
.NET Core Today and Tomorrow.NET Core Today and Tomorrow
.NET Core Today and Tomorrow
 
Unit - 1: ASP.NET Basic
Unit - 1:  ASP.NET BasicUnit - 1:  ASP.NET Basic
Unit - 1: ASP.NET Basic
 
ChuckRobledoBulletPoints
ChuckRobledoBulletPointsChuckRobledoBulletPoints
ChuckRobledoBulletPoints
 
curriculum_eng_2016
curriculum_eng_2016curriculum_eng_2016
curriculum_eng_2016
 
Novidades sobre o Silverlight 4
Novidades sobre o Silverlight 4Novidades sobre o Silverlight 4
Novidades sobre o Silverlight 4
 

Mehr von Thomas Conté

Node.JS Paris Meetup - the Tessel microcontroller, Azure and Project Oxford
Node.JS Paris Meetup - the Tessel microcontroller, Azure and Project OxfordNode.JS Paris Meetup - the Tessel microcontroller, Azure and Project Oxford
Node.JS Paris Meetup - the Tessel microcontroller, Azure and Project OxfordThomas Conté
 
Tessel + Azure IoT hackathon intro
Tessel + Azure IoT hackathon introTessel + Azure IoT hackathon intro
Tessel + Azure IoT hackathon introThomas Conté
 
DevSum'15 : Microsoft Azure and Things
DevSum'15 : Microsoft Azure and ThingsDevSum'15 : Microsoft Azure and Things
DevSum'15 : Microsoft Azure and ThingsThomas Conté
 
Azure Web Camp : Cache Distribué
Azure Web Camp : Cache DistribuéAzure Web Camp : Cache Distribué
Azure Web Camp : Cache DistribuéThomas Conté
 
Azure Web Camp : Moteur de Recherche
Azure Web Camp : Moteur de RechercheAzure Web Camp : Moteur de Recherche
Azure Web Camp : Moteur de RechercheThomas Conté
 
Azure Web Camp : NoSQL
Azure Web Camp : NoSQLAzure Web Camp : NoSQL
Azure Web Camp : NoSQLThomas Conté
 
TechDays 2014 : retour d'expérience Kompass migration Java dans Azure
TechDays 2014 : retour d'expérience Kompass migration Java dans AzureTechDays 2014 : retour d'expérience Kompass migration Java dans Azure
TechDays 2014 : retour d'expérience Kompass migration Java dans AzureThomas Conté
 
TechDays 2014 : tour d'horizon de Java dans Azure
TechDays 2014 : tour d'horizon de Java dans AzureTechDays 2014 : tour d'horizon de Java dans Azure
TechDays 2014 : tour d'horizon de Java dans AzureThomas Conté
 
Architecture d'une application Facebook pour Windows Azure
Architecture d'une application Facebook pour Windows AzureArchitecture d'une application Facebook pour Windows Azure
Architecture d'une application Facebook pour Windows AzureThomas Conté
 
JavaScript pour les développeurs .NET
JavaScript pour les développeurs .NETJavaScript pour les développeurs .NET
JavaScript pour les développeurs .NETThomas Conté
 
Presentation: Java in the Cloud with Windows Azure
Presentation: Java in the Cloud with Windows AzurePresentation: Java in the Cloud with Windows Azure
Presentation: Java in the Cloud with Windows AzureThomas Conté
 
Présentation Windows Azure - MS Days 2011
Présentation Windows Azure - MS Days 2011Présentation Windows Azure - MS Days 2011
Présentation Windows Azure - MS Days 2011Thomas Conté
 
ReMix11 Paris: Windows Azure & développement mobile
ReMix11 Paris: Windows Azure & développement mobileReMix11 Paris: Windows Azure & développement mobile
ReMix11 Paris: Windows Azure & développement mobileThomas Conté
 
TechDays 2010 (CLO301) : Windows Azure Comment Migrer Une Application
TechDays 2010 (CLO301) : Windows Azure Comment Migrer Une ApplicationTechDays 2010 (CLO301) : Windows Azure Comment Migrer Une Application
TechDays 2010 (CLO301) : Windows Azure Comment Migrer Une ApplicationThomas Conté
 
TechDays 2010 (CLO202) : Introduction à Windows Azure
TechDays 2010 (CLO202) : Introduction à Windows AzureTechDays 2010 (CLO202) : Introduction à Windows Azure
TechDays 2010 (CLO202) : Introduction à Windows AzureThomas Conté
 

Mehr von Thomas Conté (16)

Node.JS Paris Meetup - the Tessel microcontroller, Azure and Project Oxford
Node.JS Paris Meetup - the Tessel microcontroller, Azure and Project OxfordNode.JS Paris Meetup - the Tessel microcontroller, Azure and Project Oxford
Node.JS Paris Meetup - the Tessel microcontroller, Azure and Project Oxford
 
Tessel + Azure IoT hackathon intro
Tessel + Azure IoT hackathon introTessel + Azure IoT hackathon intro
Tessel + Azure IoT hackathon intro
 
DevSum'15 : Microsoft Azure and Things
DevSum'15 : Microsoft Azure and ThingsDevSum'15 : Microsoft Azure and Things
DevSum'15 : Microsoft Azure and Things
 
Azure Web Camp : Cache Distribué
Azure Web Camp : Cache DistribuéAzure Web Camp : Cache Distribué
Azure Web Camp : Cache Distribué
 
Azure Web Camp : Moteur de Recherche
Azure Web Camp : Moteur de RechercheAzure Web Camp : Moteur de Recherche
Azure Web Camp : Moteur de Recherche
 
Azure Web Camp : NoSQL
Azure Web Camp : NoSQLAzure Web Camp : NoSQL
Azure Web Camp : NoSQL
 
TechDays 2014 : retour d'expérience Kompass migration Java dans Azure
TechDays 2014 : retour d'expérience Kompass migration Java dans AzureTechDays 2014 : retour d'expérience Kompass migration Java dans Azure
TechDays 2014 : retour d'expérience Kompass migration Java dans Azure
 
TechDays 2014 : tour d'horizon de Java dans Azure
TechDays 2014 : tour d'horizon de Java dans AzureTechDays 2014 : tour d'horizon de Java dans Azure
TechDays 2014 : tour d'horizon de Java dans Azure
 
Linux on azure
Linux on azureLinux on azure
Linux on azure
 
Architecture d'une application Facebook pour Windows Azure
Architecture d'une application Facebook pour Windows AzureArchitecture d'une application Facebook pour Windows Azure
Architecture d'une application Facebook pour Windows Azure
 
JavaScript pour les développeurs .NET
JavaScript pour les développeurs .NETJavaScript pour les développeurs .NET
JavaScript pour les développeurs .NET
 
Presentation: Java in the Cloud with Windows Azure
Presentation: Java in the Cloud with Windows AzurePresentation: Java in the Cloud with Windows Azure
Presentation: Java in the Cloud with Windows Azure
 
Présentation Windows Azure - MS Days 2011
Présentation Windows Azure - MS Days 2011Présentation Windows Azure - MS Days 2011
Présentation Windows Azure - MS Days 2011
 
ReMix11 Paris: Windows Azure & développement mobile
ReMix11 Paris: Windows Azure & développement mobileReMix11 Paris: Windows Azure & développement mobile
ReMix11 Paris: Windows Azure & développement mobile
 
TechDays 2010 (CLO301) : Windows Azure Comment Migrer Une Application
TechDays 2010 (CLO301) : Windows Azure Comment Migrer Une ApplicationTechDays 2010 (CLO301) : Windows Azure Comment Migrer Une Application
TechDays 2010 (CLO301) : Windows Azure Comment Migrer Une Application
 
TechDays 2010 (CLO202) : Introduction à Windows Azure
TechDays 2010 (CLO202) : Introduction à Windows AzureTechDays 2010 (CLO202) : Introduction à Windows Azure
TechDays 2010 (CLO202) : Introduction à Windows Azure
 

Kürzlich hochgeladen

TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
Visualising and forecasting stocks using Dash
Visualising and forecasting stocks using DashVisualising and forecasting stocks using Dash
Visualising and forecasting stocks using Dashnarutouzumaki53779
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...AliaaTarek5
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 

Kürzlich hochgeladen (20)

TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
Visualising and forecasting stocks using Dash
Visualising and forecasting stocks using DashVisualising and forecasting stocks using Dash
Visualising and forecasting stocks using Dash
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 

VS 2010 EPITA MS Day Visual Studio 2010 .NET Framework 4

  • 1. MS Day EPITA Visual Studio 2010 et .NET Framework 4 Thomas Conté Architecte Microsoft
  • 2. Présentations http://fr.linkedin.com/in/tomconte http://twitter.com/tomconte http://blogs.msdn.com/b/thomasconte/ http://www.facebook.com/#!/thomas.conte http://blogs.msdn.com/b/tconte/ http://dotpunk.wordpress.com/ http://www.conté.com/ Thomas Conté EPITA promo 95 (SR) Architecte DPE chez Microsoft
  • 4. .NET Framework 1.0 First public beta at PDC 2000 RTM: early 2002 Introduced the world to “managed code” GC, JIT C# Coherent Framework XSP….ASP+…ASP.NET! WinForms
  • 5. .NET Framework 1.1 RTM Early 2003 “managed code” mainstream Ships in Windows Server 2003 Rounds out features
  • 6. .NET Framework 2.0 RTM Late 2005 ASP.NET for the Masses Application Building Blocks Parts, Authentication, Role Management, etc Visual Web Developer Client Development ClickOnce!
  • 7. .NET Framework 3.0 RTM end of 2006 Windows Presentation Foundation Vector Graphics, Media and UI Enters the age of UX Windows Communication Foundation Unified messaging model Windows Workflow Foundation Coordinating work with durable applications
  • 8. .NET Framework 3.5 RTM End of 2007 Linq ASP.NET AJAX WCF/WF REST Services Workflow Services Client Sync Client app services
  • 9. .NET Framework 3.5 "SP1" RTM Mid 2008 ASP.NET Dynamic Data ADO.NET Entity Framework Data Services (Astoria) WCF AtomPubServiceDocuments Client Client Profile Performance Working set and startup time
  • 10. .NET Framework Current "Layer Cake" .NET Framework 3.5 + SP1 Entity Framework Dynamic Data Data Services .NET Framework 3.5 Add-in Framework LINQ WF & WCF Enhancements Additional Enhancements .NET Framework 3.0 + SP1 Windows Presentation Foundation Windows Communication Foundation Windows Workflow Foundation Windows CardSpace .NET Framework 2.0 + SP1
  • 11. Un peu d’histoire… SP1 3.5 3.0 .NET 1.0 .NET 1.1 .NET 2.0 .NET 4 2002 2003 2008 CTP 2005-08 CLR 1.0 CLR 1.1 CLR 2.0 CLR 4
  • 12. Le .NET Framework WPF Win Forms DLR ASP.NET WCF And more! LINQ Base Class Libraries The CLR JIT & NGEN Garbage Collector Security Model Exception Handling Loader & Binder
  • 13. Applications Client Applications Web WPF 4 MEF Web Forms 4 AJAX 4 Client/Server WCF 4
  • 14. Les Bases… Parallel Computing Data Access Runtime DLR Integration Type Equivalence In-Process SxS Task Parallel Library Parallel LINQ Entity Framework 4 Data Services 1.5
  • 15. Web Forms 4 - Client ID 1) User Control (No ID) 2) User Control (“HeaderForm”) Control Hierarchy 3) Drop Down List (“States”) Resulting Client IDs: ctl00 ctl00_HeaderForm ctl00_HeaderForm_States
  • 16. Web Forms 4 - Routing ASP.NET Routing Route: Product/{name} -> Product.aspx Request: Products/Bikes WebForms Page File Name: Product.aspx Route Values: Name = “Bikes” Response
  • 17. ASP.NET Web Forms 4Client Id / Routing
  • 18. WPF 4 Data Grid Ribbon Multi-Touch Windows 7 Enhancements
  • 19. Managed Extensibility Framework? The Managed Extensibility Framework (MEF) is a new libraryin the .NET Framework that enables greater reuse of applications and components. Using MEF, .NET applications can make the shift from being statically compiled to dynamically composed
  • 20. Open/Closed Principle Software entities should be open for extension, but closed for modification.
  • 21. Known vs. Unknown
  • 22. Client ApplicationsWPF 4 DataGrid / MEF
  • 23. Entity Framework 4 Model-First POCO Lazy Loading Foreign Keys
  • 24. A lot of new for WF/WCF 4 XAML-only workflows are the new default Unified model between WF, WCF, and WPF Extended base activity library Simplified WF programming model Support for arguments, variables, expressions Major improvements to WCF integration Runtime and designer improvements Service discovery for WCF Hosting & management via "Dublin“
  • 25. ADO.NET Data Services 1.5 Server Enhancements Row count Server-side paging Friendly feeds BLOB streams Client Enhancements Row Count WPF/SL data binding
  • 26. ADO.NET Data ServicesRow Count andServer-Side Paging
  • 27. Parallel Computing Initiative Avant:Horloges plus rapides Maintenant: Plus de coeurs Fini de rigoler!
  • 28. The Parallel Computing Initiative Letting the brightest developers solve business problems, not concurrency problems. ”Concurrency for the masses”
  • 29. Parallel Computing with .NET 4 Task Parallel Library (TPL) Parallel LINQ (PLINQ) Coordination Data Structures (CDS) System.Threading Improvements
  • 30. Parallel LINQ Parallel LINQ (PLINQ)enables developers to easily leverage manycore with a minimal impactto existing LINQ programming model var q = from p in people         where p.Name == queryInfo.Name && p.State == queryInfo.State && p.Year >= yearStart && p.Year <= yearEnd         orderbyp.Year ascending         select p; .AsParallel()
  • 32. Dynamically-Typed Ruby Python Statically-Typed VB C# Common Language Runtime Why the DLR?
  • 33. Dynamically-Typed Ruby Python Statically-Typed VB Dynamic Language Runtime C# Common Language Runtime Why the DLR?
  • 34. .NET Dynamic Programming IronPython IronRuby C# VB.NET Others… Dynamic Language Runtime Expression Trees Dynamic Dispatch Call Site Caching PythonBinder RubyBinder COMBinder JScriptBinder ObjectBinder
  • 35. Dynamically Typed Objects Calculator calc = GetCalculator(); int sum = calc.Add(10, 20); object calc = GetCalculator(); TypecalcType = calc.GetType(); object res = calcType.InvokeMember("Add", BindingFlags.InvokeMethod, null, newobject[] { 10, 20 }); int sum = Convert.ToInt32(res); ScriptObject calc = GetCalculator(); object res = calc.Invoke("Add", 10, 20); int sum = Convert.ToInt32(res); Statically typed to be dynamic dynamic calc = GetCalculator(); int sum = calc.Add(10, 20); Dynamic method invocation Dynamic conversion
  • 37. Type Equivalence Interop Assemblies translate between managed code and COM For each interface, struct, enum, delegate, and member, contains a managed equivalent with marshalling data
  • 38. However! Primary Interop Assemblies cause many pain points…
  • 39. Go Away, PIA! Compilers embedthe portions of the interop assemblies that the add-ins actually use Runtime ensures the embedded definitions of these types are considered equivalent
  • 41. .NET Framework Compatibility .NET 4.0 is a highly compatible release .NET 4.0 does not auto–roll forward You must add a configuration file with a specific switch to get 3.5 apps to run on 4.0
  • 42. .NET Framework Compatibility Hang on… if 4.0 is compatible, why not run 3.5 apps automatically on 4.0? The BEST thing is always to prefer running on the version of the framework you built against
  • 43. CLR 2 - Existing Side-By-Side 2.0 add-in 3.0 add-in 3.5 add-in 1.1 add-in 3.5 .NET 1.1 3.0 .NET 2.0 Host Process (i.e. Outlook)
  • 44. CLR 4 - In-Process Side-By-Side 2.0 add-in 3.0 add-in 3.5 add-in 4.0 add-in 3.5 .NET 4.0 3.0 .NET 2.0 Host Process (i.e. Outlook)
  • 45. Visual Studio 2010 Training Kit Download at http://tinyurl.com/vs2010trainingkit
  • 46.
  • 48. Silverlight Modern application UI framework & runtime Rapid creation of visually stunning apps METRO themed UI controls, defined in XAML XAML, C#, HTML & JavaScript 500,000 developers spanning Windows and Web Rich media support
  • 50. http://www.microsoft.com/visualstudio/en-us/lightswitch The simplest way to build business applications for the desktop and cloud.
  • 52. ETUDIANTS.MS Les initiatives de Microsoft pour les étudiants
  • 53.
  • 57.
  • 58. Offres d’emploi du programme MACH pour jeunes diplômés
  • 60.
  • 61. Conseils et outils pour démarrer vos projets
  • 62.
  • 63. 5 catégories : Digital Media, Software Design, Game Design, IT Challenge, Embedded Development
  • 64.