DEV200 .NET Framework Overview - PowerPoint PPT Presentation

vivi
dev200 net framework overview l.
Skip this Video
Loading SlideShow in 5 Seconds..
DEV200 .NET Framework Overview PowerPoint Presentation
Download Presentation
DEV200 .NET Framework Overview

play fullscreen
1 / 36
Download Presentation
DEV200 .NET Framework Overview
97 Views
Download Presentation

DEV200 .NET Framework Overview

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. DEV200 .NET Framework Overview Chris Anderson Software Architect, .NET ClientMicrosoft Corporation

  2. .NET Framework Design Goals • Dramatically simplifies development and deployment • Unifies programming models • Provides robust and secure execution environment • Supports multiple programming languages

  3. Visual Studio.NET VB C++ C# JScript J# Common Language Specification ASP.NET Web Forms Web Services Mobile Internet Toolkit Windows Forms ADO.NET and XML Base Class Library Common Language Runtime Operating System Framework, Languages, And Tools

  4. demo One Lap Around .NET

  5. Demo: One Lap Around .NET • Create a simple Web Service • Test it in Internet Explorer • Add data logic to it • Build a smart client for it • Show seamless and safe deployment of the smart client

  6. VB C++ C# JScript J# ASP.NET Web Forms Web Services Mobile Internet Toolkit Windows Forms Framework, Languages, And Tools Visual Studio.NET Common Language Specification ADO.NET and XML Base Class Library Common Language Runtime Operating System

  7. The .NET Evolution Application Code and data structures Before COM, applications were completely separate entities with little or no integration

  8. The .NET Evolution COM provides a way for components to integrate; However, each component must provide the “plumbing” and objects cannot directly interact

  9. The .NET Evolution With the .NET Framework common language runtime, components are built on a common substrate; No “plumbing” is needed and objects can directly interact

  10. Assembly Language Compiler Native Code JIT Compiler Execution Compilation And Execution Compilation Code (IL) Source Code Metadata At installation or the first time each method is called

  11. Simplify Development • Completely eliminates COM plumbing • No more… • Registration • GUIDs • .IDL files • HRESULTs • IUnknown • AddRef/Release • CoCreateInstance =>self described apps =>hierarchical namespaces =>unified object model =>structured exceptions =>common root object =>garbage collector =>”new” operator

  12. Simplify Development • Common Type System • Common instance and type definition • Enables clean OO programming • Classes and interfaces • Constructors, properties, methods, events • Cross language inheritance • Built-in interoperability • With COM • With native (Win32® style) DLLs

  13. Everything Is An Object • Traditional views of primitive types • C++, Java™: They’re “magic” • Smalltalk, Lisp: They’re full-blown objects • .NET Framework solution: Value types • unifies with no performance cost • Deep simplicity throughout system • Improved extensibility and reusability • New primitive types: Decimal, SQL… • Collections, etc., work for all types

  14. 123 i System.Int32 o 123 123 j Everything Is An Object • Boxing • Allocates box, copies value into it • Unboxing • Checks type of box, copies value out int i = 123; object o = i; int j = (int)o; Dim i As Integer = 123 Dim o As Object = i Dim j As Integer = CInt(o)

  15. Robust Environment • Automatic lifetime management • All objects are garbage collected • Exception handling • Error handling first class and mandatory • Type-safety • No buffer overruns, No unsafe casts, Uninitialized variables

  16. Secure Environment • Security designed-in • Code access security enforcement • Security based on the identity of code • Administratively configurable via policy • ASP.NET integrated authentication of user • Windows identity, Passport®, forms-based, … • Cryptography library with XML DSIG support • Digital signature for XML (www.w3.org/signature)

  17. Simplify Deployment And Management • Zero-impact install • Applications and components can be shared or private • Side-by-side execution • Multiple versions of the same component can co-exist on a system • Assemblies • Contain dependency information

  18. VB C++ C# JScript J# ASP.NET Web Forms Web Services Mobile Internet Toolkit Windows Forms Framework, Languages, And Tools Visual Studio.NET Common Language Specification ADO.NET and XML Base Class Library Common Language Runtime Operating System

  19. Consistent API availability regardless of language and programming model .NET Framework RAD, Composition, Delegation Subclassing, Power, Expressiveness Stateless, Code embedded in HTML pages ASP VB Forms MFC/ATL Windows API Unify Programming Models

  20. .NET Framework Dim form As New Form() form.Text = "Main Window" form.Show() How Much Simpler? Windows API HWND hwndMain = CreateWindowEx( 0, "MainWClass", "Main Window", WS_OVERLAPPEDWINDOW | WS_HSCROLL | WS_VSCROLL, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, (HWND)NULL, (HMENU)NULL, hInstance, NULL); ShowWindow(hwndMain, SW_SHOWDEFAULT); UpdateWindow(hwndMain);

  21. Factored And Extensible • The Framework is not a “black box” • Any .NET class is available for you to extend through inheritance • Gives developers much more head room • Plug and Play components and subsystems

  22. ASP.NET Web Forms Web Services Mobile Internet Toolkit Windows Forms The .NET Framework Library ADO.NET and XML Base Class Library

  23. System.Web System.Windows.Forms Services UI Design ComponentModel Description HtmlControls Discovery WebControls Protocols System.Drawing Caching Security Drawing2D Printing Configuration SessionState Imaging Text System.Data System.Xml OleDb SqlClient XSLT Serialization Common SQLTypes XPath System Collections IO Security Runtime InteropServices Configuration Net ServiceProcess Remoting Diagnostics Reflection Text Serialization Globalization Resources Threading The .NET Framework Library

  24. Base Framework System Collections Security Configuration ServiceProcess Diagnostics Text Globalization Threading IO Runtime InteropServices Net Remoting Reflection Serialization Resources

  25. Data And XML System.Data OleDb SQLClient Common SQLTypes System.Xml XSLT Serialization XPath

  26. ASP.NET System.Web Services UI Description HtmlControls Discovery WebControls Protocols Caching Security Configuration SessionState

  27. Windows® Forms System.Windows.Forms Design ComponentModel System.Drawing Drawing2D Printing Imaging Text

  28. VB C++ C# JScript J# ASP.NET Web Forms Web Services Mobile Internet Toolkit Windows Forms Framework, Languages, And Tools Visual Studio.NET Common Language Specification ADO.NET and XML Base Class Library Common Language Runtime Operating System

  29. Languages • The .NET Platform is language neutral • All .NET languages are first class players • You can leverage your existing skills • Common language specification • Set of features guaranteed to be in all languages • We are providing • Visual Basic®, C++, C#, J#, JScript® • Third-parties are building • APL, COBOL, Delphi, Pascal, Eiffel, Haskell, ML, Oberon, Perl, Python, Scheme, Smalltalk…

  30. Standardization • A subset of the .NET Framework and C# submitted to ECMA • Adopted as International standards in Dec. 2001 • In the ISO fast-track process now • Co-sponsored with Intel, Hewlett-Packard • Common language infrastructure • Based on common language runtime and base framework • Layered into increasing levels of functionality

  31. Additional Resources • Learn about Web development with .NET • DEV334: Introduction to Web Forms • Learn about client development with .NET • DEV350: Building Smart Client Applications • Learn about Network class libraries • DEV342: The .NET Framework Net Class Libraries • Get the Deep Technical Drill Down • DEV366: .NET Framework Under the Hood • Learn how to Architect an application • DEV310: Architecting Enterprise Applications with Visual Studio .NET • DEV358: Architecting N-Tier .NET Applications • DEV402: Design Choices for Implementing Distributed Applications in .NET

  32. Summary • The .NET Framework • Dramatically simplifies development and deployment • Unifies programming models • Provides robust and secure execution environment • Supports multiple programming languages

  33. Discussion

  34. Resources from Microsoft Press MICROSOFT .NET FRAMEWORK • For more information please visit the TechEd Bookshop. • www.microsoft.com/mspress

  35. Don’t forget to complete the on-line Session Feedback form on the Attendee Web sitehttps://web.mseventseurope.com/teched/