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)