Prepared by: Xin,Lu
.NET Seminar
Aug.10, 2003
.NET is a brand that Microsoft has applied to several different technology. It includes:
New technologies provide new services and new possibilities.
Updated technologies to fit .NET framework.
New release of existing technologies dressed up with the .NET brand.
.
Common Language Runtime (CLR)
.NET Framework class library
VB.NET, C#, Managed C++ and
Jscript.NET
.NET My Service
.NET Calendar, .NET Contacts, .NET
Inbox, . NET Documents etc.
.NET Enterprise Servers
BizTalk Server 2000, Application Centre
2000, Commerce Server 2000, Host
Integration Server 2000 etc.
Web Services are a core technology in .NET.
Web Services use Industry-Standard protocols.
New Web Services allow programmatic access to
Web applications. Not just HTTP and HTML.
Web services can be applied in many ways. For example, mobile access, B2B and even EAI.
Web Services Description Language (WSDL) is an XML-based language for describing web services.
WSDL descriptions describe capabilities and location of web services and how to access them.
Communication using SOAP or direct HTTP.
Simple Object Access Protocol (SOAP) is a framework for exchanging XML-based information in a network.
SOAP is used to invoke the Web services.
Universal Description, Discovery and
Integration (UDDI) publishes the Web services interface definitions.
UDDI uses SOAP for communication.
Windows DNA is application developer’s environment.
Windows DNA technologies include:
COM, DCOM, ASP, VBscript, ADO, Visual
Studio (mainly VB and C++).
The .NET Framework is the successor to
Windows DNA.
Difficult in Integration
Each programming language has its own runtime libraries, data types, own approach to building GUIs and so on.
Language and environment dependent
Application written in different language access system services in different way.
The Common Language Runtime (CLR) provides a common set of data types and other services that can be used by all languages that based on .NET framework.
.NET framework class library provides a large set of standard classes for common functions that can be used by all languages that based on .NET framework.
Browser
Apps
Web Services
Apps
Local
Apps
Other
Apps
ASP.NET
ADO.NET
Windows
Forms
Enterprise
Services
.
NET Framework Class Library
Common Language Runtime
Windows
More
The CLR defines a common set of semantics that is used by multiple languages by providing a common set of data types, specification for inheritance and much more.
CLR says nothing about syntax. Developers can choose their favourite programming languages.
Other services provides by CLR:
Automatically garbage collection.
A standard format for metadata despite the different programming language.
A common scheme for organizing compiled code.
(assemblies) Assemblies can depend on other assemblies and a single application might use code from one or more assemblies.
CLR-based programming language can use objects created in other language due to self-describing type information(metadata), and common execute environment.
Metadata is embedding into every .NETcompliant EXE and DLL by .NET compiler.
For every implemented method, the metadata contains information that the loader uses to locate the method body.
Software that uses the .NET framework
(relies on CLR) is referred to as managed code.
The object-oriented code in .NET framework is called managed objects.
Objects written in any CLR-based language can inherit and use the library’s code
Managed code is always compiled first into
Microsoft Intermediate Language (MSIL).
MSIL is a set of CPU-independent instructions for performing typical operations and calling methods.
Each DLL and EXE in an assembly contains
MSIL rather than processor-specific code.
When the application is executed, MSIL is transformed into native code before it’s executed.
Each method is typically just-in-time (JIT) compiled the first time it’s invoked.
In conclusion, all managed code is complied first to MSIL, then translated into native code before execution.
Visual Studio.NET provides four languages for building .NET framework applications, including VB.NET, C#,
C++ and Jscript.NET.
Third parties also offered other languages built on CLR, including Perl,
Python, and COBOL.
VB.NET has a big change from VB 6 as
VB.NET is entirely built on the CLR.
VBScript no longer exists as a separate technology.
Developers can use full power of VB in
ASP.NET application instead.
Support for single inheritance.
Methods override.
Support for exception handling.
Full multithreading.
The ability to define explicitly interfaces directly in VB.
Support for properties and events.
Support for attributes, allowing features such as transaction support and web services to be implemented by inserting keywords in source code.
Automatic garbage collection.
C# was designed for .NET framework.
C# is object-oriented.
C# syntax derived from C++.
The features C# provides are identical to the list of VB.NET listed before, and two more features derived from C++.
Operator overloading, allowing a class to define its own unique meaning for standard operators such as plus sign.
The ability to write code that directly access specific memory address.
(unsafe code)
Visual Studio supports C++ and managed C++.
Some core C++ semantics are conflict with CLR ( like multiple inheritance).
Managed C++ is extension version of C++ in
Visual Studio to create .NET framework applications.
Managed C++ can access all features of the CLR.
JScript.NET is the Visual Studio.NET implementation of JavaScript.
It can be used to write code that’s sent to and execute by browsers, and write code for
ASP as before.
JScript.NET is build on the CLR.
JScript.NET is superset of standard Jscript.
JScript.NET is most used for ASP.NET.
Support for classes, which can contain methods, variables and properties; can implement interface; and can inherit from other classes.
A variety of new data types, including
Boolean, String, int, float, and more.
Compiled rather than interpreted code.
A library of classes and other types that can be used from any CLR-based language.
CLR-based language can create instances of these classes and call their methods.
Classes are written in C#.
The class library are organized into a tree of namespaces. The root namespaces is system.
System
Int32,
String…
Web Data Windows
Enterprise
Services
XML …
UI
…
Services Forms
…
Connection,
DataSet, …
…
XML Document
Serviced Component
System: contains the core data types used by the CLR.
System.Web: comprise ASP.NET and sub namespaces may include UI and services.
System.Data: comprise ADO.NET, offers the service of operating with DBMS.
System.Windows.Form: the types in this namespace are used to build Windows GUI.
System.Enterprise Services: Services provided by COM+, such as distributed transactions.
System.XML: Types in this name space provide support for creating and working with XML-defined data.
ADO.NET lets applications work with data stored in a DBMS and XML document.
ADO and ADO.NET don’t have much in common. ADO.NET focuses on allowing managed code to work with data through web-based application.
ASP.NET is the successor to ASP. Like ASP application, ASP.NET applications are built from one or more pages. Each page contains HTML and/or executable code.
However, ASP.NET allows the creation of two types of applications: traditional browser applications accessible via HTTP and HTML (.aspx), and web services applications accessible via SOAP (.asmx).
The code in ASP.NET applications is compiled rather than interpreted as ASP.
The distinction between script code and components is eliminated. All code in ASP.NET application is managed code.
Web controls can be used to build browserbased GUIs more easily.
ASP.NET applications are easier to install and remove than traditional ASP applications. No registration entries are required.
The .NET compact framework is a smaller version of the .NET framework for less memory and small device.
Visual Studio.NET can be used to develop applications for the .NET compact framework.
The .NET My Services technology provides access to information across the Internet via an internet-accessible
Web services.
.NET My Services relies on Microsoft’s
Passport service to offer authentication to ensure only authorized users can access the information My Services contains.
All the information stored in .NET My
Services is accessed via SOAP and defined using XML.
.NET My Services is meant to be accessed by applications.
It will succeed only if developers build
.NET My Service-based application.
.NET Alerts: Allowing sending alert to users.
.NET Calendar: Maintain a user’s personal calendar.
.NET Contacts: Provides a list of names, address, and other contact information for a user.
.NET Inbox: Allow access to a user’s e-mail.
.NET Document: Provide Internet-accessible storage for a user.
.NET Wallet: Contains payment information of a user.
.NET Lists: Contains lists such as shopping list.
.NET Profile: Contains information about an individual.
.NET Presence: Contains electronic presence information for a user.
The .NET Enterprise Servers don’t rely on the .NET framework. It is based on traditional Windows DNA technology.
All of these servers can be used with
.NET Framework applications through the interoperability features the
Framework provides.
BizTalk Server 2000: to be used to integrate applications running on diverse platforms.
Application Center 2000: to deploy and manage highly available and scalable web applications.
Commerce Server 2000: provides packaged components for building e-commence applications.
Host Integration Server (HIS) 2000: helps integrate
Windows applications with those running on other platforms.
SQL Server 2000: to store, retrieve, and analyze structured XML data.
Exchange Server 2000: to enable messaging and collaboration anytime, anywhere.
Mobile Information Server 2002: supports building application for wireless devices such as mobile phone.
Internet Security and Acceleration Server 2000: provides firewall and proxy services.
Content Management Server 2002: to manage content for dynamic e-business web sites.
Operations Manager 2002: to deliver enterpriseclass solutions for operations management.
Project Server 2002: provides an extensible technology platform to develop and deploy best practices for project management across an organization.
SharePoint Portal Server 2001: to find, share and publish business information.
.NET is Microsoft’s new internet and Web strategy.
.NET is a new Internet and Web based infrastructure.
.NET delivers software as Web Services.
.NET is a framework for universal services.
.NET is a server centric computing model.
.NET will run in any browser on “ any platform”.
.NET is based on the newest Web standards.