Title: Microsoft Global Briefing 2001 Technical Briefing
 1(No Transcript) 
 2Developing with the .NET Framework
- Rob Howard 
 - Program Manager 
 - .NET Framework TeamMicrosoft Corporation
 
  3Agenda
- Overview and .NET Evolution 
 - Design points and Architecture 
 - Common Language Runtime 
 - Class Libraries 
 - Windows Forms 
 - ASP.NET
 
  4Overview
- .NET Framework 
 - Simple, secure, modern, multi-language 
 - Great XML and Web Services support 
 - Comprehensive class libraries 
 - Consistent across languages 
 - Object oriented - inheritance, etc. 
 - ASP.NET is a incredible web platform 
 - Controls, web services 
 - Fast, scalable, available, reliable
 
  5The .NET Evolution 
 6The .NET Evolution
Application
Code and data structures
Before COM, applications were completely separate 
entities with little or no integration 
 7The .NET Evolution
COM provides a way for components to integrate. 
 However, each component must provide the 
plumbing and objects cannot directly interact. 
 8The .NET Evolution
With the .NET Framework common language runtime, 
components are built on a common substrate. No 
plumbing is needed and objects can interact 
directly 
 9Design Points
- Simplify development 
 - More power, less plumbing 
 - Unify programming models 
 - Across languages and types 
 - Web standards and best practices 
 - Rich XML, standard protocols, stateless 
 - Easier to deploy, run,  maintain 
 - Versioning and availability
 
  10Architecture
VB
C
C
JScript
Visual Studio.NET
Common Language Specification
ASP.NET
Windows Forms
ADO.NET and XML
Base Class Library
Common Language Runtime
Windows
COM Services 
 11Multi-Language
- Over 20 languages supported 
 - VB, C, C, JScript, Perl, COBOL 
 - Advanced multi-language features 
 - Cross language inheritance, exceptions 
 - Highly leveraged tools 
 - Debuggers, etc work with all languages
 
  12Compilation  Execution
Compilation
Code
Source Code
Metadata 
 13Common Language Runtime
- Manages running code 
 - Type safety and code access security 
 - Garbage collection and error handling 
 - Provides common type system 
 - Value types (integer, float, etc) 
 - Objects, Interfaces 
 - Provides access to system resources 
 - Native APIs through P/Invoke 
 - COM integration
 
  14Common Language Runtime
Base Class Library Support
Class Loader 
 15Developing Components 
 16Simplifies Development
- Eliminates COM plumbing 
 - No more 
 - Registration 
 - GUIDs 
 - .IDL files 
 - HRESULTs 
 - IUnknown 
 - AddRef/Release 
 - CoCreateInstance
 
gtself describing components
gthierarchical namespaces
gtsource code to metadata
gtstructured exceptions
gtroot object class
gtgarbage collector
gtnew operator 
 17Simplified Deployment
- No registration required 
 - Code is completely self-describing 
 - Simply copy components with app 
 - Zero-impact installation 
 - Installing one app will not affect another 
 - Global and non-global components 
 - Side-by-side execution 
 - Multiple component versions co-exist 
 - Multiple app versions co-exist
 
  18Seamless Integration
- Use .NET classes as COM objects 
 - No extra development work required 
 - COM objects can be imported 
 - No ref counting or COM API needed 
 - .NET classes utilize COM services 
 - Transactions, Object pooling, etc 
 
  19Architecture
VB
C
C
JScript
Visual Studio.NET
Common Language Specification
ASP.NET
Windows Forms
ADO.NET and XML
Base Class Library
Common Language Runtime
Windows
COM Services 
 20A Unified Model 
 21.NET Framework Namespaces
ASP.NET
Windows
ADO.NET
XML
Base Class Library 
 22.NET Framework Namespaces
System.Web
System.Windows.Forms
Services
UI
Design 
ComponentModel
Description
HtmlControls
Discovery
WebControls
Protocols
System.Drawing
Caching 
Security
Drawing2D 
Printing
Text
Configuration
SessionState
Imaging
System.Data
System.Xml
Common
SqlClient
Schema
Serialization
OleDb
SqlTypes
XPath
XPath
System 
Collections
IO
Security
Runtime
InteropServices
Configuration
Net
ServiceProcess
Remoting
Diagnostics
Reflection
Text
Serialization
Globalization
Resources
Threading 
 23Data and XML
- Managed Providers 
 - Stream-level access to data sources 
 - Fastest way to get data out of SQL 
 - ADO.NET 
 - DataSet  In-memory buffer 
 - DataReader  Synonymous with RecordSet 
 - System.Xml - Great Standards support 
 - 100 OASIS compliance 
 - XSLT 1.0, XPath 1.0, XSD 1.0, DOM2
 
  24Windows Forms
- Rich Windows applications 
 - Combines best of VB Forms, MFC and WFC 
 - Easy access to Win32  API 
 - Provides advanced features 
 - Visual forms inheritance, automatic layout 
 - Advanced graphics support  GDI 
 - Secure 
 - Code access security prevents harm 
 - No Internet Explorer security dialogs!
 
  25How 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)
.NET Framework
Form form  new Form() form.Text  "Main 
Window" form.Show() 
 26ASP.NET
- ASP.NET is a revolutionary advance of ASP 
 - Existing ASP skills still work fine 
 - but lots more features to leverage 
 - Core themes that ASP.NET has focused on 
 - Making it easier to build, deploy, and operate 
 - Providing great performance and scalability 
 - Supported platforms 
 - Windows 2000 and Windows XP 
 - Open hosting APIs
 
  27ASP.NET Development
- Server controls encapsulate behavior 
 - Provide VB-Like Model 
 - Support compiled languages 
 - VB, C, JScript, COBOL, etc. 
 - Enable separation of code from content 
 - Work independently 
 - Support multiple clients automatically 
 - Mobile controls for small devices
 
  28ASP.NET Web Services
- Simple Programming Model 
 - Author .asmx files 
 - SOAP messages mapped to methods 
 - HTTP or XML knowledge not required 
 - Multiple Message Formats 
 - SOAP messaging support 
 - HTTP Get/Post 
 - Extensible model for innovation
 
  29ASP.NET Deployment
- XCOPY deployment 
 - No registration required 
 - No stopping the server 
 - Supports all web resources 
 - Compiled components (DLL) 
 - Configuration files 
 - Update running applications 
 - Application gracefully updated 
 - No stop and restart
 
  30Scalable and Available
- Special support for multi-proc scaling 
 - Scalable GC, multi-process applications 
 - Web farm scalable session state 
 - ASP.NET State Service, SQL Server 
 - Detects and recovers from failures 
 - Crashes, hangs, memory leaks, etc 
 
  31ASP.NET 
 32Summary
- .NET Framework 
 - Simple, secure, modern, multi-language 
 - Great XML and Web Services support 
 - Comprehensive class libraries 
 - Consistent across languages 
 - Object oriented - inheritance, etc. 
 - ASP.NET is a incredible web platform 
 - Controls, web services 
 - Fast, scalable, available, reliable
 
  33Resources 
- Community 
 - ASP.NET Discussion lists 
 - http//www.asp.net 
 - Books 
 - Professional ASP.NET 
 - Web Services books due soon
 
  34(No Transcript)