Presentation is loading. Please wait.

Presentation is loading. Please wait.

Introduction. What is.Net? The hype: “Microsoft.Net is a set of Microsoft software technologies for connecting information, people, systems, and devices.

Similar presentations


Presentation on theme: "Introduction. What is.Net? The hype: “Microsoft.Net is a set of Microsoft software technologies for connecting information, people, systems, and devices."— Presentation transcript:

1 Introduction

2 What is.Net? The hype: “Microsoft.Net is a set of Microsoft software technologies for connecting information, people, systems, and devices. It enables a high level of software integration through the use of XML Web services – small, discrete, building-block applications that connect to each other as well as to other applications over the Internet.”

3 What is.Net, really?.Net is a platform that provides a standardized set of services. –It’s just like Windows, except distributed over the Internet. –It exports a common interface so that it’s programs can be run on any system that supports.Net..Net is a platform that provides a standardized set of services. –It’s just like Windows, except distributed over the Internet. –It exports a common interface so that it’s programs can be run on any system that supports.Net.

4 Goals of.Net Maintain Microsoft dominance…? Tie all devices to the Internet Software as a service Data and applications accessible on all devices –Truly compile once, run anywhere –Scalability Maintain Microsoft dominance…? Tie all devices to the Internet Software as a service Data and applications accessible on all devices –Truly compile once, run anywhere –Scalability

5 How Does It All Work? Based on 3 protocols: –HTTP –XML –SOAP XML (eXtensible Markup Language) –Separates data and view –Good, general way of describing data Based on 3 protocols: –HTTP –XML –SOAP XML (eXtensible Markup Language) –Separates data and view –Good, general way of describing data

6 Simple Object Access Protocol Definition: “Simple and lightweight mechanism for exchanging structured and typed information between peers in a decentralized, distributed environment.” Based on XML and HTTP –SOAP defined through XML –XML piggybacks on top of HTTP –Because it uses HTTP, firewalls aren’t a problem Definition: “Simple and lightweight mechanism for exchanging structured and typed information between peers in a decentralized, distributed environment.” Based on XML and HTTP –SOAP defined through XML –XML piggybacks on top of HTTP –Because it uses HTTP, firewalls aren’t a problem

7 .Net Platform.Net Framework and Visual Studio.Net Mobile Internet Toolkit –Set of programming interfaces that enable developers to target mobile devices like smart phones and PDAs Building Block Services (ie, Passport).Net Framework and Visual Studio.Net Mobile Internet Toolkit –Set of programming interfaces that enable developers to target mobile devices like smart phones and PDAs Building Block Services (ie, Passport)

8 .Net Framework Programming model for.Net Platform for running managed code in a virtual machine Provides a very good environment to develop networked applications and Web Services Programming model for.Net Platform for running managed code in a virtual machine Provides a very good environment to develop networked applications and Web Services

9 .Net Framework Contents Common Language Runtime Manages running code Verifies type safety Provides garbage collection, error handling –Provides common type system –Provides access to system resources Win32 API, COM, etc. A collection of unified classes ASP.NET ADO.NET Access to Windows Functions: System, System.Drawing, System.Web, System.XML... Common Language Runtime Manages running code Verifies type safety Provides garbage collection, error handling –Provides common type system –Provides access to system resources Win32 API, COM, etc. A collection of unified classes ASP.NET ADO.NET Access to Windows Functions: System, System.Drawing, System.Web, System.XML...

10 Inside the.Net Framework CLR Executes code, maintains security, handles component “plumbing” and dependencies Visual Basic.NET C# ASP.NET ADO.NET Enterprise Services CLR MSMQ COM+ ActiveDirectory IISWMI Win32 XML Web Services and Scripting High-productivity environment for building and operating XML Web services XML and Data Access ADO.NET interfaces any database, loosely coupled data access and native XML data format. Enterprise Services The services required for mission critical applications: Transactions, Messaging, Partitions, Object Pooling and Events Unified Class libraries Unifies Programming models across languages Factored for extensibility Designed for tools Visual J#...

11 Standards Compliance Visual Studio.NET CLI CLR Base Class Library Data and XML XML Web services Windows Forms Web Forms Common Language Specification VBC++J#... Open Language Specification XML-based data access JScript XML, SOAP- based CLI, C# Submitted to ECMA C#

12 Common Language Runtime Manages running code –Threading –Memory management –No interpreter: Install time or run time intermediate language (IL) to native compilation Fine-grained evidence-based security –Code access security IL can be verified to guarantee type safety No unsafe casts, no un-initialized variables and no out-of- bounds array indexing –Role-based security –Integrated with underlying OS Manages running code –Threading –Memory management –No interpreter: Install time or run time intermediate language (IL) to native compilation Fine-grained evidence-based security –Code access security IL can be verified to guarantee type safety No unsafe casts, no un-initialized variables and no out-of- bounds array indexing –Role-based security –Integrated with underlying OS

13 Compilation and Execution Cycle Compilation Before installation or the first time each method is called Execution JIT Compiler NativeCode MSIL Code Metadata Source Code Language Compiler

14 CLR Internals Class Loader IL to Native CompilersCodeManagerGarbageCollector Security Engine Debug Engine Type Checker Exception Manager Thread Support COM Marshaler Base Class Library Support

15 Simplified Development CLR makes things easy: –Self-describing components –Hierarchical namespaces –Source code to metadata –Structured exceptions –Root object class –Garbage collector CLR makes things easy: –Self-describing components –Hierarchical namespaces –Source code to metadata –Structured exceptions –Root object class –Garbage collector

16 .Net Unified Classes System System.Data (ADO.NET) System.XML System.Web (ASP.NET) Diagnostics Configuration Collections Net IO Threading Text Security Common OLEDB SQLTypes SQLClient XPath XSL Runtime InteropServices Remoting Serialization Serialization ConfigurationSessionState CachingSecurity Services Description Discovery Protocols UI HTMLControls WebControls System.Drawing Imaging Drawing2D Text Printing System.Windows.Forms DesignComponentModel Schema Reflection ResourcesGlobalization ServiceProcess

17 Multi-Language Development Object system is built in, not bolted on –Use the language of choice –No additional rules or API to learn Advanced multi-language features –Cross-language inheritance and exceptions Supports more than 20 languages –Perl, Python, COBOL, Jscript, Eiffel, Haskell, Pascal, ML, ADA, APL, C, Visual C++, Visual J#, Visual Basic, Visual C#, SmallTalk, Oberon, Scheme, Mercury, Oz and CAML. All languages have approximately same performance, since all turn into MSIL first. C# is the “flagship” language for the.NET Framework. Tools that work in multiple languages and across languages and platforms –Debugger Object system is built in, not bolted on –Use the language of choice –No additional rules or API to learn Advanced multi-language features –Cross-language inheritance and exceptions Supports more than 20 languages –Perl, Python, COBOL, Jscript, Eiffel, Haskell, Pascal, ML, ADA, APL, C, Visual C++, Visual J#, Visual Basic, Visual C#, SmallTalk, Oberon, Scheme, Mercury, Oz and CAML. All languages have approximately same performance, since all turn into MSIL first. C# is the “flagship” language for the.NET Framework. Tools that work in multiple languages and across languages and platforms –Debugger

18 Simple to Use Component-oriented –Properties, methods and events are first class –Design-time functionality Organization –Organized in hierarchical namespaces Unified Type System –Everything is an object –Boxing converts value types to objects No need for special variant type Example: 123.toString(); will convert the integer “123” to a string “123”; without the need to declare “123” as an integer first Component-oriented –Properties, methods and events are first class –Design-time functionality Organization –Organized in hierarchical namespaces Unified Type System –Everything is an object –Boxing converts value types to objects No need for special variant type Example: 123.toString(); will convert the integer “123” to a string “123”; without the need to declare “123” as an integer first

19 Summary Microsoft.NET –Built from the ground up (unlike MFC) –Standards-based platform –Web services –Consistent programming model The.NET Platform contains: –.NET Framework and Visual Studio.NET –Mobile Internet Toolkit –Building block services (Passport) Common framework for all languages –Common Language Runtime and Unified classes Simplified development and deployment Microsoft.NET –Built from the ground up (unlike MFC) –Standards-based platform –Web services –Consistent programming model The.NET Platform contains: –.NET Framework and Visual Studio.NET –Mobile Internet Toolkit –Building block services (Passport) Common framework for all languages –Common Language Runtime and Unified classes Simplified development and deployment

20 Resources http://www.gotdotnet.comhttp://www.gotdotnet.com –GotDotNet is a great site for code samples, tutorials, and a great developer community. Also access to the creators of C#. http://www.go-mono.com –Project Mono is an open source.NET implementation for Unix http://www.dotnetmagic.com –DotNetMagic has a great set of libraries and code to make common tasks very easy to perform. http://www.codeproject.com –Lots of code samples and resources for all programming languages. http://msdn.microsoft.com –Great for documentation on everything.NET & Win32 related. http://www.gotdotnet.comhttp://www.gotdotnet.com –GotDotNet is a great site for code samples, tutorials, and a great developer community. Also access to the creators of C#. http://www.go-mono.com –Project Mono is an open source.NET implementation for Unix http://www.dotnetmagic.com –DotNetMagic has a great set of libraries and code to make common tasks very easy to perform. http://www.codeproject.com –Lots of code samples and resources for all programming languages. http://msdn.microsoft.com –Great for documentation on everything.NET & Win32 related.


Download ppt "Introduction. What is.Net? The hype: “Microsoft.Net is a set of Microsoft software technologies for connecting information, people, systems, and devices."

Similar presentations


Ads by Google