Title: .NET Vision Demystifying Microsoft .NET
1.NET VisionDemystifying Microsoft .NET
2What is .NET??
- .NET provides the following services
- Run-time environment that makes programmers life
easier. - New opportunities for code reuse(much better than
COM) - Better Memory Management
- .Net Enables Web Services
3What Is A Web Service?
- Furthermore
- Web Services will be categorized in a directory -
UDDI - Developer tools will be able to locate and use
Web Services - Web Services will be defined in terms of the
formats and ordering of messages - Web Service consumers will be able to send and
receive messages using XML - All these capabilities will be built using
standard Web protocols
4Example of a Web Service
- Public class myclass
- public string GetString()
- return This is what you want,
- this is what you get.
-
-
-
- Using System.Web.Services
- Public class myclass
- WebMethod(DescriptionGet a string value)
- public string GetString()
- return This is what you want,
- this is what you get.
-
5A Platform for Web Services
6.NET Framework OverviewWhat is the .NET Framework
7.NET Framework Overview.NET Framework
Different Languages
VB
C
Compile
Same IL
MSIL
MSIL
8.NET Framework Overview.NET Framework
VB
MSIL
Deploy
Execute
Machine Code
MSIL
JIT Compile
9XML and the SOAP Family
XML is Lingua Franca of the Internet Simple,
open, broadly adopted Universal data exchange
Powerful distributed apps Impacts software
evolution
Visual Studio .NET
- SOAP XML interoperability protocol
- Web Services Description Language Describes Web
service capabilities - SOAP Discovery Enables tools to locate Web
services - Universal Description, Design, and Integration
(UDDI) Provides a directory of Web services
.NET Framework
Windows Application Services
Communication Protocols XML, SOAP, HTTP, HTML
10.NET FrameworkDesigned for loosely-coupled
computing
- Built for Web services
- Integral SOAP XML support
- High-productivity, multi-language development
- Unified, simplified programming model
- Secure, scalable, high-performance execution
- Advanced security and compiler technologies
Visual Studio .NET
.NET Framework
Windows Application Services
Communication Protocols XML, SOAP, HTTP, HTML
11Inside the .NET Framework
VB
C
C
Perl
Python
- Secure, integrated class libraries
- Unifies programming models across languages
- Enables cross-language integration
- Factored for extensibility
- Designed for tools
Web Services
User Interface
ASP.NET
ADO.NET Data and XML
Base Framework
Common Language Runtime
Win32
- Common Language Runtime
- Executes code, maintains security, handles
component plumbing and dependencies
- ASP.NET
- High-productivity environment for building and
running Web services
12Common Language Runtime
- Manages running code
- Threading, Memory management
- Eliminates memory management drudgery
- Kills entire classes of bugs (e.g., memory
corruption, ref counting) - Auto-versioning, no more DLL Hell
- Scalability, performance, reliability all improve
- Improved security
13.NET Languages
- The Runtime is language neutral
- All .NET languages are first class players
- You can leverage your existing skills
- Common language specification
- Any language can use and extend the .NET
Framework - All languages are interoperable
- Microsoft is providing
- Visual Basic, C, C, JScript
- Third-parties are building
- APL, COBOL, Pascal, Eiffel, Haskell, ML, Oberon,
Perl, Python, Scheme, Smalltalk, Objective
Camel,
14Framework Classes
- Spans all programming languages
- Enables cross language inheritance and debugging
- Integrates well with tools
- Object-oriented and consistent
- Increases developer productivity by reducing the
number of APIs to learn - Common type system built-in
- Extensible
- Makes it easy to add or modify framework features
- Secure
- Allows creation of secure applications
15Data Access ADO.NET
- Leverage ADO.NET to build data-driven
applications using XML - Easily pass data across the wire and between
platforms with XML - Relational and unstructured data
16ASP.NET
- Server-side Web Forms and Web Services components
separate code from content - Developer productivity increases
- Tools easily use ASP.NET
- Any programming language full VB, JScript, C,
COBOL, Perl, etc. - 40 to 70 reduction in lines of code
- Compiled
- No-touch deployment system
- Intelligent state management
- Backwards compatible with ASP
- Controls sense client and adapt output HTML,
DHTML, WML
17The .NET Compact Framework
- Designed specifically for smart devices
- Compatible subset of desktop platform
- Visual Studio.NET used for app development
- Adaptable to different application needs
- Broad availability planned
- Across multiple CPUs
- Across Windows CE and third-party RTOSes
- Across a variety of physical form factors
18.NET Framework OverviewCommon Language Runtime
- Data Access
- File IO
- Data Types
- Collections
- Directory Services
- Graphics and Images
- Messaging
- Network
- XML
19Architecting .NET Applications Use Cases
- Express the Requirements, as Activities, from the
Perspective of the User
20Architecting .NET Applications Activity Diagrams
- Use Cases Say What the User Can Do
- Activity Diagrams Show How the User Does it
21.NET Framework ArchitectureActivity Diagrams
22Yesterdays Web Applications
Servers Data, Hosts
UI Logic
Biz Logic
Browsers
OS Services
Microsoft provided COM, IIS, and IE
23Todays Web Applications
24.NET Web Applications
Applications Become Programmable Web Services
Standard Browsers
Open Internet Communications Protocols (HTTP,
SMTP, XML, SOAP)
Richer, MoreProductive User Experience
Applications LeverageGlobally-AvailableFederated
Web Services
25Visual Studio .NETThe complete development
environment for building distributed applications
for Windows and the Web
- Most productive tool for creating and consuming
Web services - Open, extensible development environment
- High productivity tools for team-based enterprise
Web development - End-to-end tools for enterprise lifecycle
productivity
Visual Studio .NET
.NET Framework
Windows Application Services
Communication Protocols XML, SOAP, HTTP, HTML
26Increased Productivity
- Unified development environment
- Simplifies mixed-language development
- Reduces training costs
- Features accessible from any language
- Visual designers for HTML, XML, data, server-side
code - End-to-end debugging support across projects,
processes, and stored procedures
27Visual Studio Core LanguagesLanguage Enhancements
- Visual Basic
- Object oriented language provides code
reusability - Maximum scalability with Free Threading
- Easier maintainability with Structured Exception
Handling - C
- Attribute based programming
- Managed Extensions for C
- C
- Modern, object oriented, type-safe language
- Bringing RAD to the C developer
28VS.NET and Web Forms
- Simplify the development of scalable Web
applications - Create like VB forms
- Compiled code behind the page
- Applications run on any browser on any platform
- Pure HTML 3.2
- Dial-able browser settings
- More maintainable than script
29VS.NET and Web Services
- Expose any function as a Web service
- No need to learn XML. Interface is automatically
generated - Seamless deployment
- Reuse existing Web services
- VS generates the plumbing to invoke the Web
service - Full IntelliSense support
- Easily build and consume with any VS language
30.NET Timeline