30
Overview of .NET Overview of .NET Framework Framework Carlotta Eaton Carlotta Eaton Associate Professor of IST Associate Professor of IST New River Community College New River Community College Dublin, VA Dublin, VA Slides created by Microsoft Slides created by Microsoft Modified by Carlotta Eaton Modified by Carlotta Eaton

Overview of.NET Framework Carlotta Eaton Associate Professor of IST New River Community College Dublin, VA Slides created by Microsoft Modified by Carlotta

Embed Size (px)

Citation preview

Page 1: Overview of.NET Framework Carlotta Eaton Associate Professor of IST New River Community College Dublin, VA Slides created by Microsoft Modified by Carlotta

Overview of .NET FrameworkOverview of .NET Framework

Carlotta EatonCarlotta EatonAssociate Professor of ISTAssociate Professor of ISTNew River Community CollegeNew River Community CollegeDublin, VA Dublin, VA

Slides created by MicrosoftSlides created by MicrosoftModified by Carlotta EatonModified by Carlotta Eaton

Page 2: Overview of.NET Framework Carlotta Eaton Associate Professor of IST New River Community College Dublin, VA Slides created by Microsoft Modified by Carlotta

22

Agenda Agenda

Development ChallengesDevelopment Challenges Implementation and BenefitsImplementation and Benefits Application TypesApplication Types .NET Language Support.NET Language Support Visual StudioVisual Studio®® .NET .NET

Page 3: Overview of.NET Framework Carlotta Eaton Associate Professor of IST New River Community College Dublin, VA Slides created by Microsoft Modified by Carlotta

33

Development ChallengesDevelopment Challenges

Software IntegrationSoftware Integration Development and deployment complexityDevelopment and deployment complexity Multiple programming modelsMultiple programming models Underlying details not abstractedUnderlying details not abstracted Security not inherentSecurity not inherent

Page 4: Overview of.NET Framework Carlotta Eaton Associate Professor of IST New River Community College Dublin, VA Slides created by Microsoft Modified by Carlotta

44

Implementation and BenefitsImplementation and Benefits.NET Framework and Tools.NET Framework and Tools

Operating SystemOperating System

Common Language RuntimeCommon Language Runtime

Base Class LibraryBase Class Library

ADO .NET and XMLADO .NET and XML

ASP .NETASP .NETWeb Forms Web ServicesWeb Forms Web Services

Mobile Internet ToolkitMobile Internet Toolkit

WindowsWindowsFormsForms

Common Language SpecificationCommon Language Specification

VBVB C++C++ C#C# J#J# ……V

isua

l Stu

dio

.NE

TV

isua

l Stu

dio

.NE

T

Page 5: Overview of.NET Framework Carlotta Eaton Associate Professor of IST New River Community College Dublin, VA Slides created by Microsoft Modified by Carlotta

55

Implementation and BenefitsImplementation and BenefitsCommon Language RuntimeCommon Language Runtime

Operating SystemOperating System

Common Language RuntimeCommon Language Runtime

Base Class LibraryBase Class Library

ADO .NET and XMLADO .NET and XML

ASP .NETASP .NETWeb Forms Web ServicesWeb Forms Web Services

Mobile Internet ToolkitMobile Internet Toolkit

WindowsWindowsFormsForms

Common Language SpecificationCommon Language Specification

VBVB C++C++ C#C# J#J# ……V

isua

l Stu

dio

.NE

TV

isua

l Stu

dio

.NE

T

Page 6: Overview of.NET Framework Carlotta Eaton Associate Professor of IST New River Community College Dublin, VA Slides created by Microsoft Modified by Carlotta

66

Implementation and BenefitsImplementation and Benefits.NET Evolution – Before COM.NET Evolution – Before COM

Before COM, applications were Before COM, applications were completely separate entities completely separate entities with little or no integrationwith little or no integration

ApplicationApplication

Code and Code and data structuresdata structures

Page 7: Overview of.NET Framework Carlotta Eaton Associate Professor of IST New River Community College Dublin, VA Slides created by Microsoft Modified by Carlotta

77

Implementation and BenefitsImplementation and Benefits.NET Evolution - Using COM.NET Evolution - Using COM

COM provides a way for COM provides a way for components to integrate. components to integrate. However, each However, each component must provide component must provide the “plumbing” and the “plumbing” and objects cannot directly objects cannot directly interact.interact.

Page 8: Overview of.NET Framework Carlotta Eaton Associate Professor of IST New River Community College Dublin, VA Slides created by Microsoft Modified by Carlotta

88

Implementation and BenefitsImplementation and Benefits.NET Evolution - Using .NET Framework.NET Evolution - Using .NET Framework

With the .NET Framework With the .NET Framework common language runtime, common language runtime, components are built on a components are built on a common substrate. No common substrate. No “plumbing” is needed and “plumbing” is needed and objects can directly interactobjects can directly interact

Page 9: Overview of.NET Framework Carlotta Eaton Associate Professor of IST New River Community College Dublin, VA Slides created by Microsoft Modified by Carlotta

99

Implementation and Benefits Implementation and Benefits Compilation and ExecutionCompilation and Execution

Source Source CodeCode

CompilationCompilation

At installation or the At installation or the first time each first time each

method is calledmethod is called

Language Language CompilerCompiler

AssemblyAssembly

ExecutionExecution

JIT JIT CompilerCompiler

NativeNative

CodeCode

Code (IL)Code (IL)

MetadataMetadata

Page 10: Overview of.NET Framework Carlotta Eaton Associate Professor of IST New River Community College Dublin, VA Slides created by Microsoft Modified by Carlotta

1010

Implementation and Benefits Implementation and Benefits Robust EnvironmentRobust Environment

Automatic lifetime managementAutomatic lifetime management All objects are garbage collectedAll objects are garbage collected Helps you avoid memory leaksHelps you avoid memory leaks

Exception handlingException handling Error handling 1Error handling 1stst class and mandatory class and mandatory

Type-safetyType-safety No buffer overruns, No unsafe casts, No buffer overruns, No unsafe casts,

Uninitialized variablesUninitialized variables Helps you avoid hacker attacksHelps you avoid hacker attacks

Page 11: Overview of.NET Framework Carlotta Eaton Associate Professor of IST New River Community College Dublin, VA Slides created by Microsoft Modified by Carlotta

1111

Implementation and Benefits Implementation and Benefits Simplify DevelopmentSimplify Development

Common Type SystemCommon Type System Common instance and type definitionCommon instance and type definition

Enables clean OO programmingEnables clean OO programming Classes and InterfacesClasses and Interfaces Constructors, Properties, MethodsConstructors, Properties, Methods Cross-language inheritanceCross-language inheritance

Built-in interoperabilityBuilt-in interoperability With COMWith COM With native Win32With native Win32®® DLLs DLLs

Page 12: Overview of.NET Framework Carlotta Eaton Associate Professor of IST New River Community College Dublin, VA Slides created by Microsoft Modified by Carlotta

1212

Implementation and Benefits Implementation and Benefits Simplify Deployment, ManagementSimplify Deployment, Management

Zero-impact installZero-impact install Applications, components shareable or privateApplications, components shareable or private

Side-by-side executionSide-by-side execution Multiple component versions can co-existMultiple component versions can co-exist Even in the same processEven in the same process .NET does not use Windows registry.NET does not use Windows registry

Assemblies Assemblies Contain dependency informationContain dependency information Avoid DLL ProblemsAvoid DLL Problems

Page 13: Overview of.NET Framework Carlotta Eaton Associate Professor of IST New River Community College Dublin, VA Slides created by Microsoft Modified by Carlotta

1313

Implementation and BenefitsImplementation and Benefits.NET Framework Class Library.NET Framework Class Library

Operating SystemOperating System

Common Language RuntimeCommon Language Runtime

Base Class LibraryBase Class Library

ADO .NET and XMLADO .NET and XML

ASP .NETASP .NETWeb Forms Web ServicesWeb Forms Web Services

Mobile Internet ToolkitMobile Internet Toolkit

WindowsWindowsFormsForms

Common Language SpecificationCommon Language Specification

VBVB C++C++ C#C# J#J# ……V

isua

l Stu

dio

.NE

TV

isua

l Stu

dio

.NE

T

Page 14: Overview of.NET Framework Carlotta Eaton Associate Professor of IST New River Community College Dublin, VA Slides created by Microsoft Modified by Carlotta

1414

Implementation and BenefitsImplementation and Benefits.NET Framework Class Library .NET Framework Class Library ( >6000 classes)( >6000 classes)

System System

System.DataSystem.Data System.XmlSystem.Xml

System.WebSystem.Web

GlobalizationGlobalization

DiagnosticsDiagnostics

ConfigurationConfiguration

CollectionsCollections

ResourcesResources

ReflectionReflection

NetNet

IOIO

ThreadingThreading

TextText

ServiceProcessServiceProcess

SecuritySecurity

CommonCommon

OleDbOleDb

SQLTypesSQLTypes

SqlClientSqlClient

XPathXPath

XSLTXSLT

RuntimeRuntimeInteropServicesInteropServices

RemotingRemoting

SerializationSerialization

SerializationSerialization

ConfigurationConfiguration SessionStateSessionState

CachingCaching SecuritySecurity

ServicesServicesDescriptionDescription

DiscoveryDiscovery

ProtocolsProtocols

UIUIHtmlControlsHtmlControls

WebControlsWebControls

System.DrawingSystem.Drawing

ImagingImaging

Drawing2DDrawing2D

TextText

PrintingPrinting

System.Windows.FormsSystem.Windows.Forms

DesignDesign ComponentModelComponentModel

Page 15: Overview of.NET Framework Carlotta Eaton Associate Professor of IST New River Community College Dublin, VA Slides created by Microsoft Modified by Carlotta

1515

Implementation and BenefitsImplementation and BenefitsUnified Development ParadigmUnified Development Paradigm

Windows APIWindows API

.NET Framework.NET Framework

Consistent API availability regardless ofConsistent API availability regardless oflanguage and programming modellanguage and programming model

ASPASP

Stateless,Stateless,Code embeddedCode embeddedin HTML pagesin HTML pages

MFC/ATLMFC/ATL

Subclassing,Subclassing,Power,Power,

ExpressivenessExpressiveness

VB FormsVB Forms

RAD,RAD,Composition,Composition,

DelegationDelegation

Page 16: Overview of.NET Framework Carlotta Eaton Associate Professor of IST New River Community College Dublin, VA Slides created by Microsoft Modified by Carlotta

1616

Implementation and BenefitsImplementation and BenefitsFactored and ExtensibleFactored and Extensible

Not a “black box”Not a “black box” .NET classes available through inheritance.NET classes available through inheritance

The sealing is much higherThe sealing is much higher

Plug-and-play components and subsystemsPlug-and-play components and subsystems

Page 17: Overview of.NET Framework Carlotta Eaton Associate Professor of IST New River Community College Dublin, VA Slides created by Microsoft Modified by Carlotta

1717

Application TypesApplication TypesConsole ApplicationsConsole Applications

Build Command Line ExecutablesBuild Command Line Executables Use Any .NET LanguageUse Any .NET Language Batch ProcessingBatch Processing Unattended ExecutionUnattended Execution Very Light WeightVery Light Weight

Hello World ~ 5kHello World ~ 5k

Page 18: Overview of.NET Framework Carlotta Eaton Associate Professor of IST New River Community College Dublin, VA Slides created by Microsoft Modified by Carlotta

1818

Application TypesApplication TypesWindows ServicesWindows Services

Build Services in any .NET LanguageBuild Services in any .NET Language Process InstallerProcess Installer

Writes registry entriesWrites registry entries IdentityIdentity

User NameUser Name PasswordPassword System AccountSystem Account

Start TypeStart Type ManualManual AutomaticAutomatic DisabledDisabled

Page 19: Overview of.NET Framework Carlotta Eaton Associate Professor of IST New River Community College Dublin, VA Slides created by Microsoft Modified by Carlotta

1919

Application TypesApplication TypesWindows FormsWindows Forms

Desktop ApplicationsDesktop Applications Form BasedForm Based

Database Front-EndDatabase Front-End SDI/MDISDI/MDI Explorer Style ApplicationsExplorer Style Applications

DockingDocking SplittersSplitters

DeploymentDeployment XCopyXCopy No-Touch (even easier than XCopy!)No-Touch (even easier than XCopy!)

PrintingPrinting Page settingsPage settings Print PreviewPrint Preview

Page 20: Overview of.NET Framework Carlotta Eaton Associate Professor of IST New River Community College Dublin, VA Slides created by Microsoft Modified by Carlotta

2020

Application TypesApplication TypesWeb FormsWeb Forms

Much Less CodingMuch Less Coding VB-Style Programming ModelVB-Style Programming Model Validator ControlsValidator Controls Rich ControlsRich Controls

DataGridDataGrid DataListDataList CalendarCalendar

Sessions Are Safe to Use!Sessions Are Safe to Use! Span servers in a web farmSpan servers in a web farm Don’t require cookiesDon’t require cookies

TracingTracing CachingCaching More Events in Global.asaxMore Events in Global.asax

Begin Request, End Request, Error, etc. Begin Request, End Request, Error, etc.

Page 21: Overview of.NET Framework Carlotta Eaton Associate Professor of IST New River Community College Dublin, VA Slides created by Microsoft Modified by Carlotta

2121

Application TypesApplication TypesXML Web ServicesXML Web Services

Evolution of applications and Web sitesEvolution of applications and Web sites Secure interactions across trusted boundariesSecure interactions across trusted boundaries

New integration methodologyNew integration methodology Cross any operating system in any languageCross any operating system in any language

Programmable application components Programmable application components Accessible via standard Internet protocolsAccessible via standard Internet protocols HTTP, XML, SOAP, WSDL, UDDIHTTP, XML, SOAP, WSDL, UDDI

Framework-provided supportFramework-provided support Automatic generation of XML, SOAP, WSDL Automatic generation of XML, SOAP, WSDL

Page 22: Overview of.NET Framework Carlotta Eaton Associate Professor of IST New River Community College Dublin, VA Slides created by Microsoft Modified by Carlotta

2222

Application Types Application Types Web ServicesWeb Services

DataData

SchemaSchema

ServicesServices

InvocationInvocation

FrameworkFramework

ObjectsObjects

ClassesClasses

MethodsMethods

CallsCalls

WebWeb

XMLXML

XSDXSD

WSDLWSDL

SOAPSOAP

ApplicationApplicationConceptsConcepts

The .NET Framework providesThe .NET Framework providesa bi-directional mappinga bi-directional mapping

Page 23: Overview of.NET Framework Carlotta Eaton Associate Professor of IST New River Community College Dublin, VA Slides created by Microsoft Modified by Carlotta

2323

.NET Language Support .NET Language Support

Common Language Specification Common Language Specification First class support across the boardFirst class support across the board

Microsoft provided languagesMicrosoft provided languages Visual BasicVisual Basic®®, C#, C++, J#, JScript, C#, C++, J#, JScript®®

3rd-party provided languages3rd-party provided languages APL, Cobol, Component Pascal, Eiffel, Fortran, APL, Cobol, Component Pascal, Eiffel, Fortran,

Haskell, Mercury, Oberon, Oz, Perl, Python, RPG, Haskell, Mercury, Oberon, Oz, Perl, Python, RPG, Scheme, Smalltalk, Standard MLScheme, Smalltalk, Standard ML

Page 24: Overview of.NET Framework Carlotta Eaton Associate Professor of IST New River Community College Dublin, VA Slides created by Microsoft Modified by Carlotta

2424

Visual Studio .NETVisual Studio .NETIntegrated Development EnvironmentIntegrated Development Environment

Simplifies mixed-language development Simplifies mixed-language development Single Solution Explorer, ToolboxSingle Solution Explorer, Toolbox IntelliSenseIntelliSense®® statement completion statement completion SquiggliesSquigglies

End-to-end debugging support across End-to-end debugging support across Languages Languages ProjectsProjects ProcessesProcesses MachinesMachines

Page 25: Overview of.NET Framework Carlotta Eaton Associate Professor of IST New River Community College Dublin, VA Slides created by Microsoft Modified by Carlotta

2525

SummarySummary

Simplified development with unified Simplified development with unified programming modelsprogramming models

Simplified application deployment and Simplified application deployment and managementmanagement

Robust foundation with secure execution Robust foundation with secure execution environmentenvironment

Significant industry support for standards Significant industry support for standards and multiple languagesand multiple languages

Page 26: Overview of.NET Framework Carlotta Eaton Associate Professor of IST New River Community College Dublin, VA Slides created by Microsoft Modified by Carlotta

2626

MSDN Subscriptions MSDN Subscriptions THE way to get Visual Studio .NETTHE way to get Visual Studio .NET

Visual Studio .NETVisual Studio .NET MSDN SubscriptionsMSDN Subscriptions

NE

WN

EW

ProfessionalProfessional Tools to build applications Tools to build applications

and XML Web services and XML Web services for Windows and the Webfor Windows and the Web

MSDN ProfessionalMSDN Professional$1199 new$1199 new

$899 renewal/upgrade$899 renewal/upgrade

MSDN EnterpriseMSDN Enterprise$2199 new$2199 new

$1599 renewal/upgrade$1599 renewal/upgrade

MSDN UniversalMSDN Universal$2799 new$2799 new

$2299 renewal/upgrade$2299 renewal/upgrade

Enterprise DeveloperEnterprise Developer Enterprise lifecycle toolsEnterprise lifecycle tools Team development supportTeam development support Core .NET Enterprise ServersCore .NET Enterprise Servers

Enterprise ArchitectEnterprise Architect Software and data modelingSoftware and data modeling Enterprise templatesEnterprise templates Architectural guidanceArchitectural guidance

Page 27: Overview of.NET Framework Carlotta Eaton Associate Professor of IST New River Community College Dublin, VA Slides created by Microsoft Modified by Carlotta

2727

.NET Partners.NET Partners

Page 28: Overview of.NET Framework Carlotta Eaton Associate Professor of IST New River Community College Dublin, VA Slides created by Microsoft Modified by Carlotta

2828

ResourcesResources

msdn.microsoft.commsdn.microsoft.com msdn.microsoft.com/seminarmsdn.microsoft.com/seminar www.gotdotnet.comwww.gotdotnet.com www.asp.netwww.asp.net Microsoft Tech·Ed 2002Microsoft Tech·Ed 2002

New Orleans, LANew Orleans, LA April 9 – 13, 2002 April 9 – 13, 2002 msdn.microsoft.com/events/teched msdn.microsoft.com/events/teched

Page 29: Overview of.NET Framework Carlotta Eaton Associate Professor of IST New River Community College Dublin, VA Slides created by Microsoft Modified by Carlotta

Questions?Questions?

Page 30: Overview of.NET Framework Carlotta Eaton Associate Professor of IST New River Community College Dublin, VA Slides created by Microsoft Modified by Carlotta

3030© 2002 Microsoft Corporation. All rights reserved.© 2002 Microsoft Corporation. All rights reserved.