Overview of .NET - University of Windsor

advertisement

Overview of .NET

Prepared by: Xin,Lu

.NET Seminar

Aug.10, 2003

Definition of .NET

.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.

What’s under .NET brand ?

.

NET Framework

Common Language Runtime (CLR)

.NET Framework class library

Visual Studio .NET.

VB.NET, C#, Managed C++ and

Jscript.NET

What’s under .NET brand ?

(Cont.)

.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 Service

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.

WSDL, SOAP & UDDI

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.

WSDL, SOAP & UDDI (Cont…)

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.

What Windows developers used before ?

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.

Windows DNA Limitation

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.

. NET Framework Improvement

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.

.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

Common Language Runtime (CLR)

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.

Common Language Runtime

(CLR) Cont…

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.

Metadata

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.

Managed Code and Managed Objects

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

Execution Procedure

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.

Execution Procedure(Cont…)

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.

CLR-based Language

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.

Visual Basic. NET

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.

VB.NET New Features

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.

VB.NET New Features

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#

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++.

C# Features

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)

C++

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

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.

JScript New Features

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.

.NET Framework Class Library

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.

.NET Framework Class Library

System

Int32,

String…

Web Data Windows

Enterprise

Services

XML …

UI

Services Forms

Connection,

DataSet, …

XML Document

Serviced Component

Library Namespaces

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.

Library Namespaces (Cont…)

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

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

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).

ASP.NET New Features

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.

.NET Compact Framework

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.

.NET My Services

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.

.NET My Services (Cont …)

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.

Services provided by .NET My Services

.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.

Services provided by .NET My Services

.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.

.NET Enterprise Servers

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.

.NET Enterprise Servers Products

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.

.NET Enterprise Servers Products

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.

.NET Enterprise Servers Products

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.

Conclusion

.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.

Download