Presentation is loading. Please wait.

Presentation is loading. Please wait.

.NET Framework Overview.NET and the.NET Framework.

Similar presentations


Presentation on theme: ".NET Framework Overview.NET and the.NET Framework."— Presentation transcript:

1

2 .NET Framework Overview.NET and the.NET Framework

3 Objectives Learn basic principles and concepts of.NET and the.NET framework Contents Looking Back.NET and.NET Framework Overview Summary Questions

4 Section 1: Looking Back Challenges for the development organization Challenges for the corporate customer Missing ????

5 Challenges for Development Organization Development Language and operating system choices Delivery CD-ROM: production, packaging, transport Stability DLL compatibility issues Operating system—pollution leads to instability Compatibility tests with “popular” solutions Maintenance Customer involvement, even for critical updates Packaging, production, and delivery of medium

6 Challenges for the Corporate Customer Deployment Installation often requires time and personnel Testing for compatibility with existing applications and OS License management Stability and security Requires (even more!) testing Can lead to inadvertent breaches of security Can destabilize the system or other solutions [ Registry] Maintenance All the problems of deployment and security revisited!

7 Missing ???? We need all system features to be available to programmers in any language. We’d like our code to be able to run on a variety of platforms. We need help with managing different versions of the same software package. We’d like object-oriented programming features to be available in and between all programming languages. For safety, we want to be able to restrict the operations of pieces of code we don’t fully trust.

8 The.NET Framework Design Goals What were missing are goals !!!! "Cross-Language Development” Inheritance, Debugging, Exception handling Reliability and Security Simple Development and Deployment Device-agnostic

9 Section 2:.NET Framework Overview What Is.NET? Migration Paths—from Anywhere to.NET Key Benefits of.NET

10 Java Code Byte Code Native Code Concept of Platform independence & Language Independence C# Code MS-IL Code Native Code Java Compiler IL Compiler JRE CLR VB.NET Code IL Compiler

11 Managed code Code running under control of the CLR is called Managed code Platform Independence : Mono - Linux Mono - Mac.NET framework - windows Performance Improvement [JIT] Language interpretability [ IL1 + SC2 = IL2 ]

12 Strong Data typing IL – No ambiguous data type VB variant (NO) VB.NET Integer - C# no Integer CTS – COMMON TYPE SPECIFICATION Predefined data types that are in IL.NET languages targets code depends on these types VB.NET Integer & C# int – IL’s Int32 CTS defines rich hierarchy of types.

13 What is. NET?.Net = Library + Environment Library : like extension of API Environment : Layer between OS and Application.

14 .NET Framework Architecture Visual Studio.NET Operating System Common Language Runtime Base Class Library ADO.NET and XML ASP.NETWindows Forms Common Language Specification C#VBC++Scheme… Base Framework Data Connectivity XML Services User Interfaces

15 Common Language Runtime Class Loader MSIL to Native Compilers (JIT) Code Manager Garbage Collector (GC) Security EngineDebug EngineType CheckerException ManagerThread SupportCOM Marshaler Base Class Library Support

16 JIT – Just In Time IL is always JIT compiled where java byte code was interpreted IL never compiled to native code in one go, JIT compiler simply each portion of code as it is called (Just In Time) Then resultant native code is stored until the application exits. So no need to recompile Since final stage JIT Compiler know exactly what processor type the program will run on. Take advantage of particular machine code instruction.

17 Garbage Collector Before GC Make the application code do it manually [ C++ ] Resources never occupied for longer than unnecessary. Code that request memory should explicitly inform the system when it no longer requires that memory. Make objects maintain reference counts [ COM ] COM component maintain a count of how many clients are currently maintaining reference to it. When reference count reaches to zero, component can destroy itself and free up memory and resources.

18 GC – Clean up memory Dynamically requested memory allocated on heap. When heap gets full and needs tidying up, it calls garbage collector. GC examining references to objects stored on the heap to identify which one are accessible from your code. Objects that are not referred to are deemed to be no longer accessible from your code and therefore be removed. The garbage collector has access to the list of active roots that the just-in-time (JIT) compiler and the runtime maintain. (Strong references)just-in-time (JIT) compiler

19 Languages lcc (MS Research Redmond) Mondrian (Utrecht) ML (MS Research Cambridge) Mercury (Melbourne U.) Oberon (Zurich University) Oz (Univ of Saarlandes) Perl Python Scheme (Northwestern U.) SmallTalk Ada APL Basic (Visual Basic) C# C C++ J# COBOL Component Pascal (Queensland Univ of Tech) ECMAScript (JScript) Eiffel (Monash University) Haskell (Utrecht University)

20 Key Benefits of.NET Ease of Use Object-oriented model Everything is an object Namespace and Framework structure Easier to comprehend and use Naming scheme of namespaces reflects the underlying functionality Freedom to Choose: The language that meets your needs The development tool that is best for you The “features and functionality” to “plug in to”

21 Key Benefits of.NET Stability Say “goodbye” to memory leaks Garbage collection manages memory Assembly eliminates DLL compatibility issues Deliverables are restricted to an assembly Security Restricting or containing the illegal memory reference Comprehensive security model Assembly specific System wide Code inspection through MSIL

22 Key Benefits of.NET Deployment and Management Deployment: Code is “Assembled” and Run “Securely” Maintenance: Version Maintenance Simplified The Web the Way You Want It Anywhere Anytime On any device

23 The Framework Microsoft ®.NET Base Class Libraries File IO Networking Database Access XML Security Cryptography Threading Enterprise Services Graphics COM Interoperability Registry Monitoring System Events Windows ® Management Interface Globalization Configuration Diagnostics Reflection Sample of what’s in the framework

24 The.NET Framework Namespaces System System.DataSystem.Xml System.Web Globalization Diagnostics Configuration Collections Resources Reflection Net IO Threading Text ServiceProcess Security Design ADO SQLTypes SQL XPath XSLT Runtime InteropServices Remoting Serialization ConfigurationSessionState CachingSecurity Services Description Discovery Protocols UI HtmlControls WebControls System.Drawing Imaging Drawing2D Text Printing System.WinForms DesignComponentModel

25 IL Compilers CSC & vbc out target:exe winexe library o warn: 0-4 nowarn unsafe checked nologo main reference lib

26 Configuration and Deployment Tools Type Library Exporter (Tlbexp.exe) Type Library Importer (Tlbimp.exe) Web Services Description Language Tool (Wsdl.exe) Web Services Discovery Tool (Disco.exe) XML Schema Definition Tool (Xsd.exe) ASP.NET Install (aspnet_regiis.exe) Global Assembly Cache tool (gacutil.exe).NET Framework Configuration Tool (mscorcfg.msc) Installer tool (installutil.exe)

27 Security Tools Code Access Security Policy Tool (Caspol.exe) File Signing Tool (Signcode.exe) Permissions View Tool (Permview.exe) PEVerify Tool (PEverify.exe) Secutil Tool (Secutil.exe) Strong Name Tool (Sn.exe)

28 General Tools Common Language Runtime Minidump Tool (Mscordmp.exe) mscordmp /pid [pid number] /out [output file] MSIL Assembler (Ilasm.exe) MSIL Disassembler (Ildasm.exe) Resource File Generator Tool (Resgen.exe) Windows Forms Class Viewer (Wincv.exe)


Download ppt ".NET Framework Overview.NET and the.NET Framework."

Similar presentations


Ads by Google