SlideShare une entreprise Scribd logo
1  sur  32
C# 4.0 – What’s new?
                     Venketash (Pat) Ramadass
         Systems Architect & Managing Director
                                      emediaIT
    Email Address: pat.ramadass@emediait.com
        Blog: http://patramadass.emediait.com
Before all of that...

    Who here is primarily using VS 2003 and .NET 1.1?


    Who here is primarily using VS 2005 and .NET 2.0?


    Who here is primarily using VS 2008 and .NET 3.5?

    ◦ What features are you using?
       WPF, WCF, WF LINQ etc?

    Who has played with VS 2010 CTP?

    ◦ Available for download
Items we are going to Cover...

    What’s new in VS 2010



    What’s new in .NET 4.0



    What’s new in c# 4.0



    Questions



    Note: All of these technologies are still new and are

    still maturing through CTPs followed by Betas/RCs
What’s new in VS 2010
What’s new in VS 2010 – General
    .NET Framework 4.0


    Tooling and Framework advancements that take advantage

    of the latest trends including:
    ◦ Cloud Development
       Windows Azure and similar
    ◦ Parallel Computing
       Taking advantage of multi-core systems

    Updated editor built in WPF

    ◦ Graphical view of source files, code coverage etc

    Simplified and more powerful TDD

    ◦ Consume first declare second
What’s new in VS 2010 – TDD
What’s new in VS 2010 – Web Development

    Full inclusion of:

    ◦ ASP .NET MVC
    ◦ JQuery
    ◦ Sliverlight

    Improved JavaScript IntelliSense engine



    Improved SharePoint tools and project templates

    ◦ VS 2010 Tools for SharePoint
       Replacement for SharePoint Designer
What’s new in VS 2010 – SharePoint
Development
  New Project Templates

 Import content using WSP Import
What’s new in VS 2010 – SharePoint
Development
What’s new in VS 2010 – Other
    Windows 7 Development

    ◦ Updates to MFC to support Windows 7, including new UI elements

    Office Business Application Development

    ◦ Build Office client applications that span multiple versions and target
      32-bit/64-bit as using a single deployment package

    “Dublin” and “Oslo” in pipeline


    ◦ “Dublin” will provide enhanced server capabilities, building on IIS for
      WCF and WF application hosting

    ◦ “Oslo” is a modelling platform for model-driven applications
       “M” Language – Authoring domains textually
       Quadrant – Tool for authoring domains visually
       Library of pre-built domain models
What’s new in VS 2010 – Team System -
Rosario
    Who here uses VSTS and/or VSTFS?

    ◦ What features/aspects do you use?

    Highlights include:


    ◦ “Democratizing” Application Lifecycle Management
        Architectural consistency
        Limiting “No-Repro” bugs

    ◦ Improved modelling
        Technical and non-technical users

    ◦ Improved QA/Test Planning and execution
        Microsoft Test Runner
          ◦ Snapshot of system data
          ◦ Partial/full video capture
        Test Impact View
What’s new in VS 2010 – Test Impact View
What’s new in VS 2010 – Team System –
Architecture Explorer
What’s new in .net 4.0
What’s new in .net 4.0 – Some Highlights

    Updates to BCL – Base Class Lilbrary



    Code Contracts

    ◦ System.Diagnostics.Contracts
    ◦ Language agnostic
    ◦ Specify Pre-conditions, post-conditions and objects
      invariants

    Parallel Extensions

    ◦ Task Parallel Library, Parallel LINQ
What’s new in .net 4.0 – Some Highlights

    BigInteger

    ◦ System.Numerics.BigInteger
    ◦ Supports all standard Integer operations

    Compression Improvements

    ◦ Removed 4GB stream limit

    Various WCF and WF enhancements


    ASP.NET

    ◦ Static Client Ids
    ◦ Chart Control
What’s new in c# 4.0
What’s new in c# 4.0

    Onto why we’re actually here...



    ◦ Dynamic Lookup

    ◦ Named and Optional Arguments

    ◦ Features for COM Interop

    ◦ Variance
What’s new in c# 4.0 – Dynamic Lookup

    New dynamic type



    Resolution of method calls or field accesses is

    deferred until runtime

    Allows for calling or accessing identical methods

    or properties across unrelated objects
What’s new in c# 4.0 – Dynamic Lookup
Demo
What’s new in c# 4.0 – Dynamic Lookup

    DLR – Dynamic Language Runtime is underlying

    mechanism

    This could be done before, using reflection or

    interfaces etc, but it would require much more
    work

    Convenience comes with drawbacks

    ◦ Performance
       Reflection is used underneath
    ◦ Only have runtime checking
What’s new in c# 4.0 – Named and Optional
Arguments

    Historically multiple overloads were required to

    achieve this type of thing in c#
    ◦ Named parameters were never possible


    Now this can be done using the optional argument

    syntax in a single constructor
What’s new in c# 4.0 – Named and Optional
Arguments Demo
What’s new in c# 4.0 – Features for COM
Interop
    Dynamic import allows you to import COM APIs so that

    variants are represented using dynamic type instead of
    object. Code that looked like...



 ...could now look like...
What’s new in c# 4.0 – Features for COM
Interop

    COM APIs use a lot of ref parameters. In c# 4.0 the

    compiler allows you to omit the ref in COM APIs

    “No PIAs’ Feature

    ◦ Ability to compile your application so that it does not
      require the Primary Interop Assemblies.
    ◦ Instead a small portion of the PIA required is put directly
      into the program’s assembly
What’s new in c# 4.0 – Variance
    Variance is one of those things most of us don’t

    often don’t have to think about

    There are some cases which you may assume

    should work that don’t however.
What’s new in c# 4.0 – Variance
    The following example does not work even though

    string obviously inherits from object



    If it did, the following would have to work, which

    goes against type safety
What’s new in c# 4.0 – Variance
    There may however be times where you would

    want to have this type of thing happening and for
    it to happen safely

    c# 4.0 allows for covariance and contravariance

    through the new out and in keywords
What’s new in c# 4.0 – Covariance and
Contravariance Demo
Conclusion

    A lot of great new technologies and tools coming

    out very soon

    There are some key advancements in both c# and

    .net 4.0, so we should all be looking to familiarise
    ourselves with them and take advantage when
    they are available

    Download VS 2010 CTP and go through the

    Walkthroughs
References
    http://www.microsoft.com/visualstudio/en-

    us/products/2010/default.mspx
    ◦ Visual Studio 2010 main site and CTP download
    ◦ CTP is in the form of a VHD and some software
      expired on it in January 2009. There are
      workarounds.

    http://channel9.msdn.com/pdc2008/TL26/

    ◦ Parallel Programming for Managed Developers with
      Visual Studio 2010

    http://patramadass.emediait.com

    ◦ This presentation, example code
Questions?

Contenu connexe

Tendances

Understanding the WSO2 Platform
Understanding the WSO2 PlatformUnderstanding the WSO2 Platform
Understanding the WSO2 PlatformWSO2
 
Azure dev ops integrations with Jenkins
Azure dev ops integrations with JenkinsAzure dev ops integrations with Jenkins
Azure dev ops integrations with JenkinsDamien Caro
 
ECS19 Elio Struyf - Setting Up Your SPFx CI/CD pipelines on Azure DevOps
ECS19 Elio Struyf - Setting Up Your SPFx CI/CD pipelines on Azure DevOpsECS19 Elio Struyf - Setting Up Your SPFx CI/CD pipelines on Azure DevOps
ECS19 Elio Struyf - Setting Up Your SPFx CI/CD pipelines on Azure DevOpsEuropean Collaboration Summit
 
The Carbon Story
The Carbon StoryThe Carbon Story
The Carbon StoryWSO2
 
Sharepoint as a service platform
Sharepoint as a service platformSharepoint as a service platform
Sharepoint as a service platformKashif Akram
 
Introducing The WSO2 Platform
Introducing The WSO2 Platform Introducing The WSO2 Platform
Introducing The WSO2 Platform WSO2
 
Haufe Onboarding - Fast Iterating With the MERN Stack - TEC Day 2019
Haufe Onboarding - Fast Iterating With the MERN Stack - TEC Day 2019Haufe Onboarding - Fast Iterating With the MERN Stack - TEC Day 2019
Haufe Onboarding - Fast Iterating With the MERN Stack - TEC Day 2019Haufe-Lexware GmbH & Co KG
 
Carbon Webinar
Carbon WebinarCarbon Webinar
Carbon WebinarWSO2
 
Essential Kit for Oracle JET Programming
Essential Kit for Oracle JET ProgrammingEssential Kit for Oracle JET Programming
Essential Kit for Oracle JET Programmingandrejusb
 
Introducing the WSO2 Developer Studio Tools for SOA Developers
Introducing the WSO2 Developer Studio   Tools for SOA DevelopersIntroducing the WSO2 Developer Studio   Tools for SOA Developers
Introducing the WSO2 Developer Studio Tools for SOA DevelopersWSO2
 
Visual Studio 2010 IDE Enhancements - Alex Mackey, Readify
Visual Studio 2010 IDE Enhancements - Alex Mackey, ReadifyVisual Studio 2010 IDE Enhancements - Alex Mackey, Readify
Visual Studio 2010 IDE Enhancements - Alex Mackey, ReadifyREADIFY
 
RESTFul Tools For Lazy Experts - CFSummit 2016
RESTFul Tools For Lazy Experts - CFSummit 2016RESTFul Tools For Lazy Experts - CFSummit 2016
RESTFul Tools For Lazy Experts - CFSummit 2016Ortus Solutions, Corp
 
Fn meetup by Sardar Jamal Arif
Fn meetup by Sardar Jamal ArifFn meetup by Sardar Jamal Arif
Fn meetup by Sardar Jamal ArifOracle Developers
 
Web changesandasp4 upload
Web changesandasp4 uploadWeb changesandasp4 upload
Web changesandasp4 uploadREADIFY
 
ASP.NET 4 & Web Dev in Visual Studio 2010 - Alex Mackey, Readify
ASP.NET 4 & Web Dev in Visual Studio 2010 - Alex Mackey, ReadifyASP.NET 4 & Web Dev in Visual Studio 2010 - Alex Mackey, Readify
ASP.NET 4 & Web Dev in Visual Studio 2010 - Alex Mackey, ReadifyREADIFY
 
Chris OBrien - Pitfalls when developing with the SharePoint Framework (SPFx)
Chris OBrien - Pitfalls when developing with the SharePoint Framework (SPFx)Chris OBrien - Pitfalls when developing with the SharePoint Framework (SPFx)
Chris OBrien - Pitfalls when developing with the SharePoint Framework (SPFx)Chris O'Brien
 
[Patel] SPFx: An ISV Insight into latest Microsoft's customization model
[Patel] SPFx: An ISV Insight into latest Microsoft's customization model[Patel] SPFx: An ISV Insight into latest Microsoft's customization model
[Patel] SPFx: An ISV Insight into latest Microsoft's customization modelEuropean Collaboration Summit
 
Entity framework (EF) 7
Entity framework (EF) 7Entity framework (EF) 7
Entity framework (EF) 7Paul Graham
 
Chapter10 web
Chapter10 webChapter10 web
Chapter10 webREADIFY
 

Tendances (20)

Understanding the WSO2 Platform
Understanding the WSO2 PlatformUnderstanding the WSO2 Platform
Understanding the WSO2 Platform
 
Azure dev ops integrations with Jenkins
Azure dev ops integrations with JenkinsAzure dev ops integrations with Jenkins
Azure dev ops integrations with Jenkins
 
ECS19 Elio Struyf - Setting Up Your SPFx CI/CD pipelines on Azure DevOps
ECS19 Elio Struyf - Setting Up Your SPFx CI/CD pipelines on Azure DevOpsECS19 Elio Struyf - Setting Up Your SPFx CI/CD pipelines on Azure DevOps
ECS19 Elio Struyf - Setting Up Your SPFx CI/CD pipelines on Azure DevOps
 
The Carbon Story
The Carbon StoryThe Carbon Story
The Carbon Story
 
Sharepoint as a service platform
Sharepoint as a service platformSharepoint as a service platform
Sharepoint as a service platform
 
Drive dam
Drive damDrive dam
Drive dam
 
Introducing The WSO2 Platform
Introducing The WSO2 Platform Introducing The WSO2 Platform
Introducing The WSO2 Platform
 
Haufe Onboarding - Fast Iterating With the MERN Stack - TEC Day 2019
Haufe Onboarding - Fast Iterating With the MERN Stack - TEC Day 2019Haufe Onboarding - Fast Iterating With the MERN Stack - TEC Day 2019
Haufe Onboarding - Fast Iterating With the MERN Stack - TEC Day 2019
 
Carbon Webinar
Carbon WebinarCarbon Webinar
Carbon Webinar
 
Essential Kit for Oracle JET Programming
Essential Kit for Oracle JET ProgrammingEssential Kit for Oracle JET Programming
Essential Kit for Oracle JET Programming
 
Introducing the WSO2 Developer Studio Tools for SOA Developers
Introducing the WSO2 Developer Studio   Tools for SOA DevelopersIntroducing the WSO2 Developer Studio   Tools for SOA Developers
Introducing the WSO2 Developer Studio Tools for SOA Developers
 
Visual Studio 2010 IDE Enhancements - Alex Mackey, Readify
Visual Studio 2010 IDE Enhancements - Alex Mackey, ReadifyVisual Studio 2010 IDE Enhancements - Alex Mackey, Readify
Visual Studio 2010 IDE Enhancements - Alex Mackey, Readify
 
RESTFul Tools For Lazy Experts - CFSummit 2016
RESTFul Tools For Lazy Experts - CFSummit 2016RESTFul Tools For Lazy Experts - CFSummit 2016
RESTFul Tools For Lazy Experts - CFSummit 2016
 
Fn meetup by Sardar Jamal Arif
Fn meetup by Sardar Jamal ArifFn meetup by Sardar Jamal Arif
Fn meetup by Sardar Jamal Arif
 
Web changesandasp4 upload
Web changesandasp4 uploadWeb changesandasp4 upload
Web changesandasp4 upload
 
ASP.NET 4 & Web Dev in Visual Studio 2010 - Alex Mackey, Readify
ASP.NET 4 & Web Dev in Visual Studio 2010 - Alex Mackey, ReadifyASP.NET 4 & Web Dev in Visual Studio 2010 - Alex Mackey, Readify
ASP.NET 4 & Web Dev in Visual Studio 2010 - Alex Mackey, Readify
 
Chris OBrien - Pitfalls when developing with the SharePoint Framework (SPFx)
Chris OBrien - Pitfalls when developing with the SharePoint Framework (SPFx)Chris OBrien - Pitfalls when developing with the SharePoint Framework (SPFx)
Chris OBrien - Pitfalls when developing with the SharePoint Framework (SPFx)
 
[Patel] SPFx: An ISV Insight into latest Microsoft's customization model
[Patel] SPFx: An ISV Insight into latest Microsoft's customization model[Patel] SPFx: An ISV Insight into latest Microsoft's customization model
[Patel] SPFx: An ISV Insight into latest Microsoft's customization model
 
Entity framework (EF) 7
Entity framework (EF) 7Entity framework (EF) 7
Entity framework (EF) 7
 
Chapter10 web
Chapter10 webChapter10 web
Chapter10 web
 

En vedette

Csharp ebook
Csharp ebookCsharp ebook
Csharp ebook988633
 
C# 4.0 and .NET 4.0
C# 4.0 and .NET 4.0C# 4.0 and .NET 4.0
C# 4.0 and .NET 4.0Buu Nguyen
 
Sejarah perkembangan linguistik (ayu)
Sejarah perkembangan linguistik (ayu)Sejarah perkembangan linguistik (ayu)
Sejarah perkembangan linguistik (ayu)Watak Bulat
 
Factoring out system components – RAMP 2013
Factoring out system components – RAMP 2013Factoring out system components – RAMP 2013
Factoring out system components – RAMP 2013Andreas Ehn
 
Metodologia final Empresas Familiares
Metodologia final Empresas FamiliaresMetodologia final Empresas Familiares
Metodologia final Empresas Familiaresmetodologia2013
 
Savannah chatham (1)..
Savannah chatham (1)..Savannah chatham (1)..
Savannah chatham (1)..eeniarrol
 
Daftar isi fix revisi
Daftar isi fix  revisiDaftar isi fix  revisi
Daftar isi fix revisianomwiradana
 
La Familia Trabajo De Computacion Alejandro Puruncajas 1 Cca
La Familia Trabajo De Computacion Alejandro Puruncajas 1 CcaLa Familia Trabajo De Computacion Alejandro Puruncajas 1 Cca
La Familia Trabajo De Computacion Alejandro Puruncajas 1 CcaAlejo P
 
Inside the Millennial Mind
Inside the Millennial MindInside the Millennial Mind
Inside the Millennial MindCEB, now Gartner
 
María G_Pérez _Presentación.
 María G_Pérez _Presentación. María G_Pérez _Presentación.
María G_Pérez _Presentación.mariagracia18
 
La perdurabilidad en las empresas amiliasde
La perdurabilidad en las empresas amiliasdeLa perdurabilidad en las empresas amiliasde
La perdurabilidad en las empresas amiliasdemariaperezgamboa
 

En vedette (20)

Csharp ebook
Csharp ebookCsharp ebook
Csharp ebook
 
C# 4.0 dynamic
C# 4.0 dynamicC# 4.0 dynamic
C# 4.0 dynamic
 
Dynamic C#
Dynamic C# Dynamic C#
Dynamic C#
 
C# 4.0 and .NET 4.0
C# 4.0 and .NET 4.0C# 4.0 and .NET 4.0
C# 4.0 and .NET 4.0
 
Sejarah perkembangan linguistik (ayu)
Sejarah perkembangan linguistik (ayu)Sejarah perkembangan linguistik (ayu)
Sejarah perkembangan linguistik (ayu)
 
Beni culturali - Daniela Fiore
Beni culturali  - Daniela FioreBeni culturali  - Daniela Fiore
Beni culturali - Daniela Fiore
 
Factoring out system components – RAMP 2013
Factoring out system components – RAMP 2013Factoring out system components – RAMP 2013
Factoring out system components – RAMP 2013
 
Tamagaci
TamagaciTamagaci
Tamagaci
 
Student c
Student cStudent c
Student c
 
Ap feb scene
Ap feb sceneAp feb scene
Ap feb scene
 
Tec16grupo9 ide9610177 anexos1
Tec16grupo9 ide9610177 anexos1Tec16grupo9 ide9610177 anexos1
Tec16grupo9 ide9610177 anexos1
 
Metodologia final Empresas Familiares
Metodologia final Empresas FamiliaresMetodologia final Empresas Familiares
Metodologia final Empresas Familiares
 
Savannah chatham (1)..
Savannah chatham (1)..Savannah chatham (1)..
Savannah chatham (1)..
 
Daftar isi fix revisi
Daftar isi fix  revisiDaftar isi fix  revisi
Daftar isi fix revisi
 
Invest in the UK
Invest in the UKInvest in the UK
Invest in the UK
 
Alaa Bebars
Alaa BebarsAlaa Bebars
Alaa Bebars
 
La Familia Trabajo De Computacion Alejandro Puruncajas 1 Cca
La Familia Trabajo De Computacion Alejandro Puruncajas 1 CcaLa Familia Trabajo De Computacion Alejandro Puruncajas 1 Cca
La Familia Trabajo De Computacion Alejandro Puruncajas 1 Cca
 
Inside the Millennial Mind
Inside the Millennial MindInside the Millennial Mind
Inside the Millennial Mind
 
María G_Pérez _Presentación.
 María G_Pérez _Presentación. María G_Pérez _Presentación.
María G_Pérez _Presentación.
 
La perdurabilidad en las empresas amiliasde
La perdurabilidad en las empresas amiliasdeLa perdurabilidad en las empresas amiliasde
La perdurabilidad en las empresas amiliasde
 

Similaire à C# 4.0 - Whats New

tutorials-visual-studio_visual-studio-2015-preview-comes-with-emulator-for-an...
tutorials-visual-studio_visual-studio-2015-preview-comes-with-emulator-for-an...tutorials-visual-studio_visual-studio-2015-preview-comes-with-emulator-for-an...
tutorials-visual-studio_visual-studio-2015-preview-comes-with-emulator-for-an...Anil Sharma
 
Angular (v2 and up) - Morning to understand - Linagora
Angular (v2 and up) - Morning to understand - LinagoraAngular (v2 and up) - Morning to understand - Linagora
Angular (v2 and up) - Morning to understand - LinagoraLINAGORA
 
The next step from Microsoft - Vnext (Srdjan Poznic)
The next step from Microsoft - Vnext (Srdjan Poznic)The next step from Microsoft - Vnext (Srdjan Poznic)
The next step from Microsoft - Vnext (Srdjan Poznic)Geekstone
 
ASP.NET Core: The best of the new bits
ASP.NET Core: The best of the new bitsASP.NET Core: The best of the new bits
ASP.NET Core: The best of the new bitsKen Cenerelli
 
MS Day EPITA 2010: Visual Studio 2010 et Framework .NET 4.0
MS Day EPITA 2010: Visual Studio 2010 et Framework .NET 4.0MS Day EPITA 2010: Visual Studio 2010 et Framework .NET 4.0
MS Day EPITA 2010: Visual Studio 2010 et Framework .NET 4.0Thomas Conté
 
VASmalltalk, Today and Tomorrow
VASmalltalk, Today and TomorrowVASmalltalk, Today and Tomorrow
VASmalltalk, Today and TomorrowESUG
 
Introduction to .NET Core & ASP.NET Core MVC
Introduction to .NET Core & ASP.NET Core MVCIntroduction to .NET Core & ASP.NET Core MVC
Introduction to .NET Core & ASP.NET Core MVCSaineshwar bageri
 
Best practices for upgrading vb 6.0 projects to vb.net
Best practices for upgrading vb 6.0 projects to vb.netBest practices for upgrading vb 6.0 projects to vb.net
Best practices for upgrading vb 6.0 projects to vb.netajmal_fuuast
 
Microsoft .NET 6 -What's All About The New Update
Microsoft .NET 6 -What's All About The New UpdateMicrosoft .NET 6 -What's All About The New Update
Microsoft .NET 6 -What's All About The New UpdateAdam John
 
White Paper : ASP.NET Core AngularJs 2 and Prime
White Paper : ASP.NET Core AngularJs 2 and PrimeWhite Paper : ASP.NET Core AngularJs 2 and Prime
White Paper : ASP.NET Core AngularJs 2 and PrimeHamida Rebai Trabelsi
 
Guide to Vite JS – Modern Fron-End Development Tool
Guide to Vite JS – Modern Fron-End Development ToolGuide to Vite JS – Modern Fron-End Development Tool
Guide to Vite JS – Modern Fron-End Development ToolAlbiorix Technology
 
A simplest way to reconstruct .Net Framework - CRB Tech
A simplest way to reconstruct .Net Framework - CRB TechA simplest way to reconstruct .Net Framework - CRB Tech
A simplest way to reconstruct .Net Framework - CRB TechPooja Gaikwad
 
A simplest-way-to-reconstruct-.net-framework
A simplest-way-to-reconstruct-.net-frameworkA simplest-way-to-reconstruct-.net-framework
A simplest-way-to-reconstruct-.net-frameworksonia merchant
 
Que hay de nuevo en Visual Studio 2013 y ASP.NET 5.1
Que hay de nuevo en Visual Studio 2013 y ASP.NET 5.1Que hay de nuevo en Visual Studio 2013 y ASP.NET 5.1
Que hay de nuevo en Visual Studio 2013 y ASP.NET 5.1Rodolfo Finochietti
 
Murach: An introduction to web programming with ASP.NET Core MVC
Murach: An introduction to web programming with ASP.NET Core MVCMurach: An introduction to web programming with ASP.NET Core MVC
Murach: An introduction to web programming with ASP.NET Core MVCMahmoudOHassouna
 
FEDSPUG April 2014: Visual Studio 2013 for Application Lifecycle Management &...
FEDSPUG April 2014: Visual Studio 2013 for Application Lifecycle Management &...FEDSPUG April 2014: Visual Studio 2013 for Application Lifecycle Management &...
FEDSPUG April 2014: Visual Studio 2013 for Application Lifecycle Management &...WSPDC & FEDSPUG
 
Comparison of Programming Platforms
Comparison of Programming PlatformsComparison of Programming Platforms
Comparison of Programming PlatformsAnup Hariharan Nair
 

Similaire à C# 4.0 - Whats New (20)

tutorials-visual-studio_visual-studio-2015-preview-comes-with-emulator-for-an...
tutorials-visual-studio_visual-studio-2015-preview-comes-with-emulator-for-an...tutorials-visual-studio_visual-studio-2015-preview-comes-with-emulator-for-an...
tutorials-visual-studio_visual-studio-2015-preview-comes-with-emulator-for-an...
 
Angular (v2 and up) - Morning to understand - Linagora
Angular (v2 and up) - Morning to understand - LinagoraAngular (v2 and up) - Morning to understand - Linagora
Angular (v2 and up) - Morning to understand - Linagora
 
The next step from Microsoft - Vnext (Srdjan Poznic)
The next step from Microsoft - Vnext (Srdjan Poznic)The next step from Microsoft - Vnext (Srdjan Poznic)
The next step from Microsoft - Vnext (Srdjan Poznic)
 
Moving ASP.NET MVC to ASP.NET Core
Moving ASP.NET MVC to ASP.NET Core Moving ASP.NET MVC to ASP.NET Core
Moving ASP.NET MVC to ASP.NET Core
 
ASP.NET Core: The best of the new bits
ASP.NET Core: The best of the new bitsASP.NET Core: The best of the new bits
ASP.NET Core: The best of the new bits
 
MS Day EPITA 2010: Visual Studio 2010 et Framework .NET 4.0
MS Day EPITA 2010: Visual Studio 2010 et Framework .NET 4.0MS Day EPITA 2010: Visual Studio 2010 et Framework .NET 4.0
MS Day EPITA 2010: Visual Studio 2010 et Framework .NET 4.0
 
VASmalltalk, Today and Tomorrow
VASmalltalk, Today and TomorrowVASmalltalk, Today and Tomorrow
VASmalltalk, Today and Tomorrow
 
Crack mcts.com
Crack mcts.comCrack mcts.com
Crack mcts.com
 
Introduction to .NET Core & ASP.NET Core MVC
Introduction to .NET Core & ASP.NET Core MVCIntroduction to .NET Core & ASP.NET Core MVC
Introduction to .NET Core & ASP.NET Core MVC
 
Best practices for upgrading vb 6.0 projects to vb.net
Best practices for upgrading vb 6.0 projects to vb.netBest practices for upgrading vb 6.0 projects to vb.net
Best practices for upgrading vb 6.0 projects to vb.net
 
Microsoft .NET 6 -What's All About The New Update
Microsoft .NET 6 -What's All About The New UpdateMicrosoft .NET 6 -What's All About The New Update
Microsoft .NET 6 -What's All About The New Update
 
White Paper : ASP.NET Core AngularJs 2 and Prime
White Paper : ASP.NET Core AngularJs 2 and PrimeWhite Paper : ASP.NET Core AngularJs 2 and Prime
White Paper : ASP.NET Core AngularJs 2 and Prime
 
Guide to Vite JS – Modern Fron-End Development Tool
Guide to Vite JS – Modern Fron-End Development ToolGuide to Vite JS – Modern Fron-End Development Tool
Guide to Vite JS – Modern Fron-End Development Tool
 
A simplest way to reconstruct .Net Framework - CRB Tech
A simplest way to reconstruct .Net Framework - CRB TechA simplest way to reconstruct .Net Framework - CRB Tech
A simplest way to reconstruct .Net Framework - CRB Tech
 
A simplest-way-to-reconstruct-.net-framework
A simplest-way-to-reconstruct-.net-frameworkA simplest-way-to-reconstruct-.net-framework
A simplest-way-to-reconstruct-.net-framework
 
curriculum_eng_2016
curriculum_eng_2016curriculum_eng_2016
curriculum_eng_2016
 
Que hay de nuevo en Visual Studio 2013 y ASP.NET 5.1
Que hay de nuevo en Visual Studio 2013 y ASP.NET 5.1Que hay de nuevo en Visual Studio 2013 y ASP.NET 5.1
Que hay de nuevo en Visual Studio 2013 y ASP.NET 5.1
 
Murach: An introduction to web programming with ASP.NET Core MVC
Murach: An introduction to web programming with ASP.NET Core MVCMurach: An introduction to web programming with ASP.NET Core MVC
Murach: An introduction to web programming with ASP.NET Core MVC
 
FEDSPUG April 2014: Visual Studio 2013 for Application Lifecycle Management &...
FEDSPUG April 2014: Visual Studio 2013 for Application Lifecycle Management &...FEDSPUG April 2014: Visual Studio 2013 for Application Lifecycle Management &...
FEDSPUG April 2014: Visual Studio 2013 for Application Lifecycle Management &...
 
Comparison of Programming Platforms
Comparison of Programming PlatformsComparison of Programming Platforms
Comparison of Programming Platforms
 

Plus de Venketash (Pat) Ramadass

emediaIT - Unified Communications - 2011.09.01
emediaIT - Unified Communications - 2011.09.01emediaIT - Unified Communications - 2011.09.01
emediaIT - Unified Communications - 2011.09.01Venketash (Pat) Ramadass
 
emediaIT - Mobility Solutions - 2011.03.01
emediaIT - Mobility Solutions - 2011.03.01emediaIT - Mobility Solutions - 2011.03.01
emediaIT - Mobility Solutions - 2011.03.01Venketash (Pat) Ramadass
 
emediaIT - Sharepoint 2010 and K2 Breakfast - 2010.04.22
emediaIT - Sharepoint 2010 and K2 Breakfast - 2010.04.22emediaIT - Sharepoint 2010 and K2 Breakfast - 2010.04.22
emediaIT - Sharepoint 2010 and K2 Breakfast - 2010.04.22Venketash (Pat) Ramadass
 
Silverlight - What Is It And How Can We Use It
Silverlight - What Is It And How Can We Use ItSilverlight - What Is It And How Can We Use It
Silverlight - What Is It And How Can We Use ItVenketash (Pat) Ramadass
 

Plus de Venketash (Pat) Ramadass (6)

emediaIT - Unified Communications - 2011.09.01
emediaIT - Unified Communications - 2011.09.01emediaIT - Unified Communications - 2011.09.01
emediaIT - Unified Communications - 2011.09.01
 
emediaIT - Mobility Solutions - 2011.03.01
emediaIT - Mobility Solutions - 2011.03.01emediaIT - Mobility Solutions - 2011.03.01
emediaIT - Mobility Solutions - 2011.03.01
 
emediaIT - Sharepoint 2010 and K2 Breakfast - 2010.04.22
emediaIT - Sharepoint 2010 and K2 Breakfast - 2010.04.22emediaIT - Sharepoint 2010 and K2 Breakfast - 2010.04.22
emediaIT - Sharepoint 2010 and K2 Breakfast - 2010.04.22
 
emediaIT and Dell Breakfast - 2009.11.05
emediaIT and Dell Breakfast - 2009.11.05emediaIT and Dell Breakfast - 2009.11.05
emediaIT and Dell Breakfast - 2009.11.05
 
Silverlight - What Is It And How Can We Use It
Silverlight - What Is It And How Can We Use ItSilverlight - What Is It And How Can We Use It
Silverlight - What Is It And How Can We Use It
 
ASP.NET MVC - Whats The Big Deal
ASP.NET MVC - Whats The Big DealASP.NET MVC - Whats The Big Deal
ASP.NET MVC - Whats The Big Deal
 

Dernier

Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 

Dernier (20)

Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 

C# 4.0 - Whats New

  • 1. C# 4.0 – What’s new? Venketash (Pat) Ramadass Systems Architect & Managing Director emediaIT Email Address: pat.ramadass@emediait.com Blog: http://patramadass.emediait.com
  • 2. Before all of that... Who here is primarily using VS 2003 and .NET 1.1?  Who here is primarily using VS 2005 and .NET 2.0?  Who here is primarily using VS 2008 and .NET 3.5?  ◦ What features are you using?  WPF, WCF, WF LINQ etc? Who has played with VS 2010 CTP?  ◦ Available for download
  • 3. Items we are going to Cover... What’s new in VS 2010  What’s new in .NET 4.0  What’s new in c# 4.0  Questions  Note: All of these technologies are still new and are  still maturing through CTPs followed by Betas/RCs
  • 4. What’s new in VS 2010
  • 5. What’s new in VS 2010 – General .NET Framework 4.0  Tooling and Framework advancements that take advantage  of the latest trends including: ◦ Cloud Development  Windows Azure and similar ◦ Parallel Computing  Taking advantage of multi-core systems Updated editor built in WPF  ◦ Graphical view of source files, code coverage etc Simplified and more powerful TDD  ◦ Consume first declare second
  • 6. What’s new in VS 2010 – TDD
  • 7. What’s new in VS 2010 – Web Development Full inclusion of:  ◦ ASP .NET MVC ◦ JQuery ◦ Sliverlight Improved JavaScript IntelliSense engine  Improved SharePoint tools and project templates  ◦ VS 2010 Tools for SharePoint  Replacement for SharePoint Designer
  • 8. What’s new in VS 2010 – SharePoint Development New Project Templates   Import content using WSP Import
  • 9. What’s new in VS 2010 – SharePoint Development
  • 10. What’s new in VS 2010 – Other Windows 7 Development  ◦ Updates to MFC to support Windows 7, including new UI elements Office Business Application Development  ◦ Build Office client applications that span multiple versions and target 32-bit/64-bit as using a single deployment package “Dublin” and “Oslo” in pipeline  ◦ “Dublin” will provide enhanced server capabilities, building on IIS for WCF and WF application hosting ◦ “Oslo” is a modelling platform for model-driven applications  “M” Language – Authoring domains textually  Quadrant – Tool for authoring domains visually  Library of pre-built domain models
  • 11. What’s new in VS 2010 – Team System - Rosario Who here uses VSTS and/or VSTFS?  ◦ What features/aspects do you use? Highlights include:  ◦ “Democratizing” Application Lifecycle Management  Architectural consistency  Limiting “No-Repro” bugs ◦ Improved modelling  Technical and non-technical users ◦ Improved QA/Test Planning and execution  Microsoft Test Runner ◦ Snapshot of system data ◦ Partial/full video capture  Test Impact View
  • 12. What’s new in VS 2010 – Test Impact View
  • 13. What’s new in VS 2010 – Team System – Architecture Explorer
  • 14. What’s new in .net 4.0
  • 15. What’s new in .net 4.0 – Some Highlights Updates to BCL – Base Class Lilbrary  Code Contracts  ◦ System.Diagnostics.Contracts ◦ Language agnostic ◦ Specify Pre-conditions, post-conditions and objects invariants Parallel Extensions  ◦ Task Parallel Library, Parallel LINQ
  • 16. What’s new in .net 4.0 – Some Highlights BigInteger  ◦ System.Numerics.BigInteger ◦ Supports all standard Integer operations Compression Improvements  ◦ Removed 4GB stream limit Various WCF and WF enhancements  ASP.NET  ◦ Static Client Ids ◦ Chart Control
  • 17. What’s new in c# 4.0
  • 18. What’s new in c# 4.0 Onto why we’re actually here...  ◦ Dynamic Lookup ◦ Named and Optional Arguments ◦ Features for COM Interop ◦ Variance
  • 19. What’s new in c# 4.0 – Dynamic Lookup New dynamic type  Resolution of method calls or field accesses is  deferred until runtime Allows for calling or accessing identical methods  or properties across unrelated objects
  • 20. What’s new in c# 4.0 – Dynamic Lookup Demo
  • 21. What’s new in c# 4.0 – Dynamic Lookup DLR – Dynamic Language Runtime is underlying  mechanism This could be done before, using reflection or  interfaces etc, but it would require much more work Convenience comes with drawbacks  ◦ Performance  Reflection is used underneath ◦ Only have runtime checking
  • 22. What’s new in c# 4.0 – Named and Optional Arguments Historically multiple overloads were required to  achieve this type of thing in c# ◦ Named parameters were never possible Now this can be done using the optional argument  syntax in a single constructor
  • 23. What’s new in c# 4.0 – Named and Optional Arguments Demo
  • 24. What’s new in c# 4.0 – Features for COM Interop Dynamic import allows you to import COM APIs so that  variants are represented using dynamic type instead of object. Code that looked like... ...could now look like...
  • 25. What’s new in c# 4.0 – Features for COM Interop COM APIs use a lot of ref parameters. In c# 4.0 the  compiler allows you to omit the ref in COM APIs “No PIAs’ Feature  ◦ Ability to compile your application so that it does not require the Primary Interop Assemblies. ◦ Instead a small portion of the PIA required is put directly into the program’s assembly
  • 26. What’s new in c# 4.0 – Variance Variance is one of those things most of us don’t  often don’t have to think about There are some cases which you may assume  should work that don’t however.
  • 27. What’s new in c# 4.0 – Variance The following example does not work even though  string obviously inherits from object If it did, the following would have to work, which  goes against type safety
  • 28. What’s new in c# 4.0 – Variance There may however be times where you would  want to have this type of thing happening and for it to happen safely c# 4.0 allows for covariance and contravariance  through the new out and in keywords
  • 29. What’s new in c# 4.0 – Covariance and Contravariance Demo
  • 30. Conclusion A lot of great new technologies and tools coming  out very soon There are some key advancements in both c# and  .net 4.0, so we should all be looking to familiarise ourselves with them and take advantage when they are available Download VS 2010 CTP and go through the  Walkthroughs
  • 31. References http://www.microsoft.com/visualstudio/en-  us/products/2010/default.mspx ◦ Visual Studio 2010 main site and CTP download ◦ CTP is in the form of a VHD and some software expired on it in January 2009. There are workarounds. http://channel9.msdn.com/pdc2008/TL26/  ◦ Parallel Programming for Managed Developers with Visual Studio 2010 http://patramadass.emediait.com  ◦ This presentation, example code