Microsoft .NET.


57 views
Uploaded on:
Description
Microsoft .NET Gaurav Gupta Dinesh Chandnani CSc 630 Spring 2002 Affirmations Microsoft MSDN http://www.msdn.microsoft.com/library Microsoft GotDotNet http://www.gotdotnet.com Sun Microsystems http://www.java.sun.com Csharp Help http://www.csharphelp.com Sam Gentiles Site
Transcripts
Slide 1

Microsoft .NET Gaurav Gupta Dinesh Chandnani CSc 630 Spring 2002

Slide 2

Acknowledgments Microsoft MSDN http://www.msdn.microsoft.com/library Microsoft GotDotNet http://www.gotdotnet.com Sun Microsystems http://www.java.sun.com Csharp Help http://www.csharphelp.com Sam Gentiles Website http://www.project-inspiration.com/sgentile/Brinkster Web Hosting http://www.brinkster.com DotNetBuzz http://www.dotnetbuzz.com .netWire http://www.dotnetwire.com The IT Portal http://www.theitportal.com/dotnet .NET Experts http://www.dotnetexperts.com CSc 630: Microsoft .NET

Slide 3

Outline Microsoft Vision .NET Design Goals .NET Framework Visual Studio.NET Web Services .NET versus J2EE Conclusion CSc 630: Microsoft .NET

Slide 4

Microsoft Vision Empower individuals, at whatever time, wherever, and on any gadget through extraordinary programming CSc 630: Microsoft .NET

Slide 5

Outline Microsoft Vision .NET Design Goals .NET Framework Visual Studio.NET Web Services . NET versus J2EE Conclusion CSc 630: Microsoft .NET

Slide 6

.NET Design Goals Unifies programming models Dramatically improves advancement Provides strong execution environment Supports numerous programming dialects Natively bolsters XML Web Services CSc 630: Microsoft .NET

Slide 7

Outline Microsoft Vision .NET Design Goals .NET Framework Visual Studio.NET Web Services .NET versus J2EE Conclusion CSc 630: Microsoft .NET

Slide 8

VB C++ C# JScript … Visual Studio.NET Common Language Specification ASP.NET: Web Services and Web Forms Windows Forms ADO.NET: Data and XML Base Class Library Common Language Runtime The .NET Framework CSc 630: Microsoft .NET

Slide 9

Terminology "ABC" CLR : Common Language Runtime One runtime for some programming dialects Assembly Container for code, metadata and resources—your new term for what you used to call “D-L-L“ Intermediate Language (IL) One moderate, abnormal state get together style dialect that is transmitted by dialect compilers Metadata Information that depicts the state of information and the runtime conduct of a project CSc 630: Microsoft .NET

Slide 10

Source code VB C# C++ Unmanaged Component Compiler Managed code Assembly IL Code Assembly IL Code Assembly IL Code Common Language Runtime JIT Compiler Native Code Operating System Services Execution Model: CLR CSc 630: Microsoft .NET

Slide 11

Common Language Runtime Robust and secure execution environment Type safe, junk gathering Common for various dialects Deep-mix alternatives Simplifies arrangement andâ management No registry included, zero-effect introduce Side-by-website execution of different forms Potentially Multi-Platform ? CSc 630: Microsoft .NET

Slide 12

Common Language Runtime Execution environment for "managed code" Managed? Code lives on plate as IL Must be deciphered into machine Code references other code Other code dwelling in different congregations must be discovered Memory must be overseen .NET utilizes a junk jockey to carry out that employment Execution must be as secure as could be allowed Safeguard code against infections and worms CSc 630: Microsoft .NET

Slide 13

Assembly Language Compiler Native Code JIT Compiler Execution CLR Execution Model: Conceptual Compilation Code (IL) Source Code Metadata Before establishment or the first run through every technique is called CSc 630: Microsoft .NET

Slide 14

Assembly Assemblies contains the code that CLR executes useful building pieces mindful recover any dependant gatherings does not execute without Assembly Manifest CSc 630: Microsoft .NET

Slide 15

Assembly Assemblies are loadable substances containing Assembly metadata Type metadata MSIL code Resources Assemblies contain: Modules Consists of one or various physical documents Bundled by a "packing list": The Manifest CSc 630: Microsoft .NET

Slide 16

Manifest: Standard Elements Manifest is a table with data records Manifest contains data about: Assembly name Version data Processor and OS Files that make up this get together References to sorts and assets CSc 630: Microsoft .NET

Slide 17

Modules Module is an incorporated unit Modules contain metadata and IL Metadata depicts structure IL portrays runtime conduct Modules can\'t be stacked freely Must be contained in get together CSc 630: Microsoft .NET

Slide 18

Intermediate Language (IL) .NET dialects are ordered to an Intermediate Language (IL). CLR acknowledges the IL code and recompiles it to machine code. The recompilation is without a moment to spare (JIT) importance it is done when a capacity or subroutine is called. The JIT code stays in memory for ensuing calls. In situations where there is insufficient memory it is disposed of. CSc 630: Microsoft .NET

Slide 19

Outline Microsoft Vision .NET Design Goals .NET Framework Visual Studio.NET Web Services .NET versus J2EE Conclusion CSc 630: Microsoft .NET

Slide 20

.gathering hi {} .get together extern mscorlib {} .strategy static open void principle () il oversaw { .entrypoint .maxstack 1 ldstr "Hello World from IL!" call void [ mscorlib ] System.Console::WriteLine (class System.String ) ret } MSIL: Hello World class HelloWorld { open static void Main() { System.Console.WriteLine ("Hello World");   } CSc 630: Microsoft .NET

Slide 21

Metadata A sort must act naturally unmistakable: It must depict properties and techniques that it uncovered. Illustrations: The sort Integer depicts what values it takes and what operations it acknowledges. The sort Check depicts what values (e.g., AccountNo and Amount) it takes and what operations (e.g., Cash, Deposit) it acknowledges. CSc 630: Microsoft .NET

Slide 22

.NET JVM: CLR JIT (Just-In-Time) incorporates strategies reserves the local code Verify MSIL to be sort safe Managed code can contain stage particular calls and conditions. CSc 630: Microsoft .NET

Slide 23

Common Type System CSc 630: Microsoft .NET

Slide 24

. NET Class Library In customary situations distinctive classifications of administrations are given to the developer through libraries, for example, C run time library, Win32 APIs, I/O and database access libraries, and so on. These libraries are dialect needy, working framework ward, and regularly contain straightforward subroutine calls rather than self depicting sorts. In .NET all administrations fall into a solitary, chain of importance sorted out, dialect autonomous class library CSc 630: Microsoft .NET

Slide 25

Generation 1 Generation 0 The Collector In Action New stack starts with new era Accessible references keep objects alive Preserves/Compacts referenced articles Objects left converge with more established era New allotments reconstruct new era CSc 630: Microsoft .NET-25 CSc 630: Microsoft .NET

Slide 26

Garbage Collection The CLR incorporates refuse accumulation. Overseen store dependably indicates the following accessible spot so portion velocity is closer to stack allotment. Memory is apportioned progressively, bringing about less page blames and enhanced reserve utilization. System.GC offers access to the GC: GC::Collect(int era) and so forth. CSc 630: Microsoft .NET

Slide 27

Outline Microsoft Vision .NET Design Goals .NET Framework Visual Studio.NET Web Services .NET versus J2EE Conclusion CSc 630: Microsoft .NET

Slide 28

Visual Studio .NET Supports multi-dialect Designs applications all the more rapidly Builds arrangements with tenet authorization formats Tests applications for strength CSc 630: Microsoft .NET

Slide 29

VS.NET Core Languages Visual Basic Substantial dialect advancement First class .NET dialect Leverage existing aptitudes C# More profitable C/C++ dialect for .NET Full RAD support Visual C++ Still most intense and adaptable dialect Enables incremental movement to .NET CSc 630: Microsoft .NET

Slide 30

Perl Python COBOL Eiffel Haskell ML JScript Ada APL C Other Languages. . . Pascal C++ Visual Basic C# SmallTalk Oberon Scheme Mercury Objective Caml Oz CSc 630: Microsoft .NET

Slide 31

C# Modern article situated, sort safe, refuse gathered Familiar to C/C++ software engineers. Coordinated COM, Platform API, and XML bolster No class libraries, utilizes just basic .NET libraries Implementation of another dialect with full backing for the .NET structure. CSc 630: Microsoft .NET

Slide 32

C# Java Class structure Single legacy Interfaces Garbage Collection Code security Reflection JavaDoc Convenience & Additional Features Properties Indexes Attributes Delegates C++ Feature lavishness, Direct access to memory Legacy pivotal words CSc 630: Microsoft .NET

Slide 33

Public interface Icalc { int add( int x, int y); int subtract( int x, int y); } Public class Calculator : Icalc { int add( int x, int y) { return x + y; } int subtract( int x, int y) { return x-y; } } Interface and Class in C# CSc 630: Microsoft .NET

Slide 34

Public Interface Icalc Function Add(X As Integer , Y as Integer ) Function Subtract(X As Integer , Y as Integer ) End Interface Public Class Calculator Implements ICalc Function Add(X as Integer , Y as Integer ) Implements Icalc.Add Add = x + y End Function Subtract(X as Integer , Y as Integer ) Implements Icalc.Subtract Subtract = x – y End Function End Class Interface and Class in VB.NET CSc 630: Microsoft .NET

Slide 35

C++ Managed C++ can be utilized to compose .NET Framework applications It depends on expansions to the standard dialect C++ will be essential for non-Framework-based applications The center semantics of C++ does not coordinate with CLR CSc 630: Microsoft .NET

Slide 36

Cross-Language Interoperability ‘This is a VB.NET code Namespace MyCSClass Public Class CSClass Public Sub CSClass() \'code End Sub ‘returns the length of the passed string Public MyMethod(str As String ) As Integer MyMethod = str. Length ; End

Recommended
View more...