22
.Net – The First Glance What Is .Net, Why Use .Net

Net – The First Glance What Is.Net, Why Use.Net

Embed Size (px)

Citation preview

.Net – The First Glance

What Is .Net, Why Use .Net

The Business Challenges Expose legacy data & services

Stocks info, marketing databases etc. Connect business information systems

My inventory management your ordering system

Leverage other services in the solution Vacation you booked on my site in your Outlook

calendar Web based components, subscription model

Old component-DLL New component-Web svc.

The Developer Challenges OS/Language dependence

VB on Solaris ?,MFC in Linux,<your app> on PalmOS Distribution:

CD vs. Download,1 GB distribution vs. install on demand

Stability and Maintenance DLL Hell,Upgrade pains Access violations

Security Developer: application rights IT: security policy

.Net promise Common Language Runtime – many

platforms C++,C#,VB Memory management & security

Assemblies Self contained - no more DLLs Side by side deployment

Web services Web based components Expose and interconnect existing systems & data .NET My Services – global roaming profile

.NET World

.NET Solutions

Servers: SQL, BizTalk, IIS

.NET My Services 3d party Web services

Web services

Class library - .Net framework

Runtime

OS

Solutions Using.NET Framework

Windows

IIS Console Cell phoneHosts:

C# VB.NET Perl.NETLanguages: Managed C++

Exploring the framework Collections,Threads Streams, I/O,TCP/IP,MSMQ, WinForms,ASP.NET,GDI+ XML,Serialization,Remoting,SOAP Cryptography,Security ADO.NET CodeDOM,RegEx,Resources Reflection,COM/Interop

CLR – Common Language Runtime Common type system and language spec

Value , reference, sizeof Method invocations, exceptions

Garbage collection JIT Compiler ( JVM -> native code) Security

Code access Identity Roles Based

CLR continued Threading

Expose OS facilities Exceptions

Use OS facilities Debugging & profiling

Assemblies Versioning Overrides Security

Requirements Signing

Deployment Xcopy WinInstaller Downloads

C# C++

- multiple inheritance & templates + interface inheritance (like Java) + garbage collection + some syntactic sugar

Everything is an object (string too!) Delegates & events Attributes

Comments that survive compilation Metadata that might be used by other tools

WinForms Used to build windows rich clients Layout in the code (Java like) +

resources Data binding Custom controls

Inherited Custom User (composite)

ASP.Net Web Forms:

Codebehind (Separate UI & code) Web page is like a form (with a class

behind) Server common & custom controls –

generate html Web-Farm session state Caching

ADO.Net Fully XML based Recordset is dead:

DataSet – fully disconnected very powerful snapshot with relation capabilities. Uses DataAdapter to read & write.

DataReader = fire hose recordset: Read only forward only db data stream.

Providers SQL.NET & ODBC.NET

Remoting – RPC Marshalling

Channels: SOAP-HTTP, binary-TCP Proxies/stubs Lifetime management by leasing

Lease manager asks clients when the lease expires

Web Services

Technology behind Web services SOAP – OS & transport agnostic

RPC UDDI – discovery services (yellow

pages) XML HTTP – Current transport for SOAP

Web service properties Stateless Talks in SOAP – XML WEB based components

Enterprise servers SQL 2000 Mobile Information Server SharePoint – document sharing &

mgmt Commerce server BizTalk – business process integration

server.

Migration path COM support Managed C++ Visual Studio 7 still support MFC &

ATL

What can be useful for XLTEK Compact & embedded platforms

(mobility) WinForms or ASP.NET for client side. Web service model for integration with

other hospital IT services. .Net My Services for identity

management and other integrations. C# or managed C++ => stability &

clarity.

Resources www.microsoft.com/.net http://www.gotdotnet.com/ http://www.ondotnet.com/dotnet/