Overview of Microsoft .NET Framework 4.5 Bhushan Mulmule [email protected] www.dotnetvideotutorial.com www.dotnetvideotutorial.com
Video for this session is available on www.dotnetvideotutorial.com www.dotnetvideotutorial.com
Agenda www.dotnetvideotutorial.com
Its all Evolution! www.dotnetvideotutorial.com
www.dotnetvideotutorial.com
www.dotnetvideotutorial.com
www.dotnetvideotutorial.com
www.dotnetvideotutorial.com
www.dotnetvideotutorial.com
www.dotnetvideotutorial.com
www.dotnetvideotutorial.com
www.dotnetvideotutorial.com
.NET Framework www.dotnetvideotutorial.com
Is run-time environment to execute .NET Apps Code Execution Exception Handling Resource Management Garbage Collection Code Access Security Just In Time Compilation Language Interoperability Application Isolation Library of tested, reusable code that developers can use in own applications Consists of classes, interfaces, and structures, delegates etc. Categorized using Namespaces www.dotnetvideotutorial.com
OS CLR Executed by CLR Executed by OS OS Classic Compilation Vs. .NET Compilation Using FCL Classes FCL Assemblies www.dotnetvideotutorial.com
Assembly Manifest Type Metadata Resources CIL Assembly Meta Information Common Intermediate Language Earlier called Microsoft Intermediate Language or MSIL or IL Also referred as Managed Code Is an object-oriented assembly language Advantages Platform Independence Language Independence Information about all types used in source code Optional part Details of external resources if used www.dotnetvideotutorial.com Consist of Meta-information and CIL Basic Building blocks of .NET Framework Self Descriptive Two Types Private Public Information about assembly Assembly name Assembly Version Security Key References to other assemblies used
Resources required to develop and execute the applications Typically includes a hardware architecture and a software framework Platform Independence Machine Code JIT Assembly Loader Assembly / PE (exe / dll ) Meta Information CIL Code C# Compiler C# Source Code (Uses ref of dlls from FCL) Development Platform Production Platform . NET Framework CLR FCL Assembly / PE FCL Class Ref www.dotnetvideotutorial.com
Language Independence VB.NET Code VB.NET Compiler C# Code C# Compiler CIL JIT Native Code F# / C++.NET/ Any CLS compatible Lang Compiler FCL CLR www.dotnetvideotutorial.com
CLR CLS works with the CTS to ensure language interoperability The CLS is a set of minimum standards that all compilers targeting .NET must support. GC CAS CLS JIT CTS FCL Common Type System defines the set predefined data types available in IL Compiles CIL to Machine code compiles portion of code as it is called. And cached Code Access Security Applies the permission to code, based on source of code and other identities garbage collector manages the allocation and release of memory for your application. Reclaims unreferenced or dead objects and clears their memory. Is run-time environment to execute .NET Apps Commercial implementation of CLI by Microsoft Code Execution Exception Handling Resource Management Garbage Collection Code Access Security Just In Time Compilation Language Interoperability Application Isolation Common Language Infrastructure is an international standard that is the basis for creating execution and development environments in which languages and libraries work together seamlessly. www.dotnetvideotutorial.com
CLR 2.0 FCL 2005 GC CAS CLS JIT CTS Set of common classes need in various types of applications. Typically classes in System namespace. Set of classes to be used for database communication Provides architecture, library and controls to develop desktop applications. Library of tested, reusable code that developers can use in own applications Consists of classes, interfaces, and structures, delegates etc. Categorized using Namespaces Namespaces support the hierarchical organization of classes and prevent type name collisions Provides architecture to develop web applications and web services . Subsets are WebForms XML WebServices www.dotnetvideotutorial.com
CLR FCL presentation system for building Windows client applications with visually stunning user experiences. resolution-independent and vector-based rendering engine Features: XAML, 3D Graphics, Animation, Media, etc GC CAS CLS JIT CTS 2.0 2005 3.0 2006 framework for building service-oriented applications. Workflows provide a way of describing the order of execution and dependent relationships between pieces of short- or long-running work. provides a standards-based solution for working with and managing diverse digital identities. Discontinued from Feb 2011 Microsoft is currently working on a replacement called U-Prove www.dotnetvideotutorial.com
CLR FCL GC CAS CLS JIT CTS 2.0 2005 3.0 2006 3.5 2007 Enhancements in Common Language Runtime Enhancements in WPF, WCF, Networking, Windows Forms, etc New server controls and ASP.NET AJAX set of features introduced in Visual Studio 2008 that extends powerful query capabilities to the language syntax of C# and Visual Basic. www.dotnetvideotutorial.com
CLR FCL GC CAS CLS JIT CTS 2.0 2005 3.0 2006 3.5 2007 3.5sp1 2008 object-relational mapper that enables .NET developers to work with relational data using domain-specific objects. It eliminates the need for most of the data-access code that developers usually need to write. ASP.NET Dynamic Data lets you create extensible data-driven Web applications by inferring at run time the appearance and behavior of data entities from the database schema and deriving UI behavior from it. www.dotnetvideotutorial.com
CLR FCL GC CAS CLS JIT CTS 2.0 2005 3.0 2006 3.5 2007 3.5sp1 2008 4.0 2010 Parallel LINQ (PLINQ) is a parallel implementation of LINQ to Objects. Task Parallel Library set APIs in the System.Threading and System.Threading.Tasks namespaces Efficiently use all the available processors powerful , patterns-based way to build dynamic websites enables a clean separation of concerns gives full control over markup Provides features that enable fast Test Driven Development for creating sophisticated applications that use the latest web standards. The Portable Class Library project enables you to write and build managed assemblies that work on more than one .NET Framework platform. www.dotnetvideotutorial.com
CLR FCL GC CAS CLS JIT CTS 2.0 2005 3.0 2006 3.5 2007 3.5sp1 2008 4.0 2010 4.5 2012 WebSocket establishes persistent connection between the client and the server and both parties can start sending data at any time. HTML5 offers new features (elements, attributes, event handlers, and APIs) for easier web application development and more sophisticated form handling. JQuery is powerful JavaScript library CSS is used to control the style and layout of Web pages. CSS3 is the latest standard for CSS A Windows Store app is a new type of app that is sold in the Windows Store and runs on Windows 8 devices. Microsoft Windows Metro is the clean, dynamic, and content-focused UI in Windows 8. www.dotnetvideotutorial.com
CLR 1.1 FCL 1.1 CLR 2.0 FCL 2.0 CLR 4.0 FCL 4.0 CLR 4.5 FCL 4.5 FCL 3.0 FCL 3.5 CLR 1.0 FCL 1.0 CLR Versions and SxS Execution Side By Side Execution Allows multiple versions of the Framework to be installed on a single system 4.0 onwards Supports inproc SxS 2002 2005 2003 2010 2012 In-process side by side is the ability to run multiple versions of the CLR in a single process. By default, managed COM components run with the .NET Framework version they were built with, regardless of the .NET Framework version that is loaded for the process. www.dotnetvideotutorial.com
The .NET Framework is an execution and development platform for building apps for Windows, Windows Phone, Windows Server, and Windows Azure... www.dotnetvideotutorial.com
What's Next http://msdn.microsoft.com/en-us/library/vstudio/w0x726c2.aspx Beginning Visual C# 2012 programming (Wrox) Professional C# 2012 and .NET 4.5 (Wrox) Pro C# 5.0 and the .NET 4.5 Framework, 6th Edition www.dotnetvideotutorial.com