The .NET Platform - A Brief Overview

2,499 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
2,499
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
27
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

The .NET Platform - A Brief Overview

  1. 1. the .net platform a brief overview carlos a. m. lopes cl@oink.tw @carlosaml
  2. 2. first, A LITTLE HISTORY...
  3. 3. in the late 90s... • Next Generation Web Services • COM+ 2.0 • Universal Runtime • ASP 4.0 • J++
  4. 4. “why not put into the system all of these silly housekeeping, plumbing tricks?” “have the platform do the dirty work, then you get to do the creative work” Anders Hejlsberg – chief C# architect
  5. 5. MICROSOFT JAVA?!
  6. 6. 2002 .NET Framework 1.0
  7. 7. • 2002 – 1.0 • 2003 – 1.1 • 2005 – 2.0 • 2006 – 3.0 • 2007 – 3.5 • 2009 – 4.0
  8. 8. • 2002 – 1.0 SP1 & SP2 • 2004 – 1.0 SP3 • 2004 – 1.1 SP1 • 2007 – 2.0 SP1 • 2009 – 2.0 SP2 • 2007 – 3.0 SP1 • 2009 – 3.0 SP2 • 2008 – 3.5 SP1
  9. 9. ok, LET’S SEE A BIT MORE
  10. 10. basically, the runtime (CLR) & the class libraries (BCL & FCL)
  11. 11. THE CLR the Common Language Runtime
  12. 12. the common language runtime • .net platform runtime environment • VM-like • Microsoft’s implementation of the CLI • runs only on Windows environments (!!!)
  13. 13. CLI?!
  14. 14. the common language infrastructure • open specification (ECMA-335) • developed by Microsoft • pretty much defines the core of the platform – Common Type System – Common Language Specification – Virtual Execution System
  15. 15. csharp-online.net
  16. 16. now, the COMMON INTERMEDIATE LANGUAGE aka Microsoft Intermediate Language
  17. 17. the CIL • the “.net bytecode” • the CLR JIT compiler uses this to generate native code • and that’s pretty much it
  18. 18. what if I just hate Microsoft but somehow love .net?
  19. 19. here we go... • Mono – seems pretty cool, but... • DotGNU – not so promising I guess... :-/
  20. 20. how about copyrights, patents and all that cool stuff?
  21. 21. Microsoft Community Promise http://www.microsoft.com/interop/cp/def ault.mspx
  22. 22. bla bla bla It is important to note that, under the Community Promise, anyone can freely implement these specifications with their technology, code, and solutions. You do not need to sign a license agreement, or otherwise communicate to Microsoft how you will implement the specifications. The Promise applies to developers, distributors, and users of Covered Implementations without regard to the development model that created the implementations, the type of copyright licenses under which it is distributed, or the associated business model. Under the Community Promise, Microsoft provides assurance that it will not assert its Necessary Claims against anyone who makes, uses, sells, offers for sale, imports, or distributes any Covered Implementation under any type of development or distribution model, including open-source licensing models such as the LGPL or GPL. Peter Galli – Open Source Community Manager at Microsoft
  23. 23. bla bla bla It is important to note that, under the Community Promise, anyone can freely implement these specifications with their technology, code, and solutions. You do not need to sign a license agreement, or otherwise communicate to Microsoft how you will implement the specifications. The Promise applies to developers, distributors, and users of Covered Implementations without regard to the development model that created the implementations, the type of copyright licenses under which it is distributed, or the associated business model. Under the Community Promise, Microsoft provides assurance that it will not assert its Necessary Claims against anyone who makes, uses, sells, offers for sale, imports, or distributes any Covered Implementation under any type of development or distribution model, including open-source licensing models such as the LGPL or GPL. Peter Galli – Open Source Community Manager at Microsoft
  24. 24. all right, LET’S TALK ABOUT STUFF
  25. 25. • value types • callbacks and events • generic types directly into the CLR • pointers (yey!) • enums
  26. 26. • LINQ – type inference – anonymous types – lambdas – extension methods • DLR (IronRuby, IronPython) • parallel extensions
  27. 27. and YET MORE HISTORY
  28. 28. • 2002 – .NET 1.0 – Visual Studio 2002 – first release – not really usable • 2003 – .NET 1.1 – Visual Studio 2003 – much better – usable
  29. 29. • 2005 – .NET 2.0 – Visual Studio 2005 – much much better • generics • anonymous methods • VS 2005 • 2006 – .NET 3.0 – still .NET 2.0 (!) – 4 big new components • WCF, WPF, WF & WCS
  30. 30. • 2007 – .NET 3.5 – Visual Studio 2008 – still .NET 2.0 runtime – lots of new stuff, specially to support LINQ • expression trees • lambda expressions • extension methods • type inference • 2008 – .NET 3.5 SP1 – Entity Framework – ADO.NET Data Services
  31. 31. • 2009 – .NET 4.0 – parallel extensions • PLINQ • Task Parallel Library – dynamic runtime (DLR) • dynamic members • IronRuby, IronPython – F# – co- and contra-variance – Visual Studio 2010 – Entity Framework 4.0
  32. 32. WHAT ELSE?
  33. 33. and THAT’S IT!

×