Best Industrial Training in C,C++,PHP,Dot Net,Java in Jalandhar

Tuesday, 14 January 2014

Introduction to .NET Framework



.NET Framework (pronounced dot net) is a software framework developed by Microsoft that runs primarily on Microsoft Windows. and if you want to run the .Net Framework on Linux or Mac OS, then you have to use Mono, which is an open-source version of the .NET Framework (including a C# compiler).
 
  It includes a large library and provides language interoperability (each language can use code written in other languages) across several programming languages. Programs written for .NET Framework execute in a software environment (as contrasted to hardware environment), known as the Common Language Runtime (CLR), an application virtual machine that provides services such as security, memory management, and exception handling. The class library and the CLR together constitute .NET Framework.
.NET Framework's Base Class Library provides user interface, data access, database connectivity, cryptography, web application development, numeric algorithms, and network communications. Programmers produce software by combining their own source code with .NET Framework and other libraries. .NET Framework is intended to be used by most new applications created for the Windows platform. Microsoft also produces an integrated development environment largely for .NET software called Visual Studio.


In Other words,.Net framework has two main components:

(i) CLR (Common Language Runtime): The .Net framework provides a runtime environment called the Common Language Runtime. CLR takes care of the execution of code and other services such as memory management, security, thread management, code verification, compilation etc.
CLS and CTS are the parts of CLR.
CLS (Common Language Specification): CLS defines the rules required for any language to interoperate with other CLS- complaint languages. In simple words, CLS defines the guidelines for languages to follow so that they can communicate with each other. By using CLS, different parts of a program can be written in different languages such as vb.net, c#.net.

CTS (Common Type System): .Net framework supports multiple languages and different languages define their primitives data types in different formats. Microsoft tries to convert these data types into a generic data types so that different codes written in different languages are converted into language independent code. For example: C# defines an integer variable as int i=10; where as VB.Net defines an integer variable as Dim i as Integer =10 but their CTS type is Int32.

(ii) FCL (Framework Class Library): FCL is the class library which is used for performing common functionality like string manipulation, IO operations, threading, Security, Data Access, Mail, Reflection, Collections ,Generics etc.



Design features

Interoperability
    Because computer systems commonly require interaction between newer and older applications, .NET Framework provides means to access functionality implemented in newer and older programs that execute outside .NET environment. Access to COM components is provided in the System.Runtime.InteropServices and System.EnterpriseServices namespaces of the framework; access to other functionality is achieved using the P/Invoke feature.
Common Language Runtime engine
    The Common Language Runtime (CLR) serves as the execution engine of .NET Framework. All .NET programs execute under the supervision of the CLR, guaranteeing certain properties and behaviors in the areas of memory management, security, and exception handling.
Language independence
    .NET Framework introduces a Common Type System, or CTS. The CTS specification defines all possible datatypes and programming constructs supported by the CLR and how they may or may not interact with each other conforming to the Common Language Infrastructure (CLI) specification. Because of this feature, .NET Framework supports the exchange of types and object instances between libraries and applications written using any conforming .NET language.
Base Class Library
    The Base Class Library (BCL), part of the Framework Class Library (FCL), is a library of functionality available to all languages using .NET Framework. The BCL provides classes that encapsulate a number of common functions, including file reading and writing, graphic rendering, database interaction, XML document manipulation, and so on. It consists of classes, interfaces of reusable types that integrates with CLR(Common Language Runtime).
Simplified deployment
    .NET Framework includes design features and tools which help manage the installation of computer software to ensure it does not interfere with previously installed software, and it conforms to security requirements.
Security
    The design addresses some of the vulnerabilities, such as buffer overflows, which have been exploited by malicious software. Additionally, .NET provides a common security model for all applications.
Portability
    While Microsoft has never implemented the full framework on any system except Microsoft Windows, it has engineered the framework to be platform-agnostic,[3] and cross-platform implementations are available for other operating systems (see Silverlight and the Alternative implementations section below). Microsoft submitted the specifications for the Common Language Infrastructure (which includes the core class libraries, Common Type System, and the Common Intermediate Language),the C# language,[7] and the C++/CLI language to both ECMA and the ISO, making them available as official standards. This makes it possible for third parties to create compatible implementations of the framework and its languages on other platforms.




Microsoft started development of .NET Framework in the late 1990s, originally under the name of Next Generation Windows Services (NGWS). By late 2000 the first beta versions of .NET 1.0 were released.
Version 3.0 of .NET Framework is included with Windows Server 2008 and Windows Vista. Version 3.5 is included with Windows 7 and Windows Server 2008 R2, and can also be installed on Windows XP and Windows Server 2003.[2] On 12 April 2010, .NET Framework 4 was released alongside Visual Studio 2010.

 Types of JIT Complier:


·  Pre-JIT COMPILER

Pre-JIT compiles complete source code into native code in a single compilation cycle. This is done at the time of deployment of the application.
 
·  Econo-JIT COMPILER:

Econo-JIT compiles only those methods that are called at runtime. However, these compiled methods are removed when they are not required.
 
·  Normal-JIT COMPILER:

Normal-JIT compiles only those methods that are called at runtime. These methods are compiled the first time they are called, and then they are stored in cache. When the same methods are called again, the compiled code from cache is used for execution.

These methods are compiled the first time they are called, and then they are stored in cache. When the same methods are called again, the compiled code from cache is used for execution.
 
 


.NET Framework Version History
.NET Version
Introduced with IDE
Features Detail
4.5.1
Visual Studio 2013
  1. Includes performance and debugging improvements
  2. Support for automatic binding redirection
  3. Expanded support for Windows Store apps
4.5
Visual Studio 2012
  1. Features Enhancements to CLR 4.0
  2. Async Support
  3. Support for building Windows Store apps
  4. Features Enhancement to WPF, WCF, WF, and ASP.NET
4.0
Visual Studio 2010
  1. Introduced CLR 4.0
  2. Managed Extensibility Framework (MEF)
  3. Dynamic Language Runtime (DLR)
  4. Task Parallel Library
3.5
Visual Studio 2008
  1. Built-In AJAX Support
  2. LINQ
  3. Dynamic Data
  4. Multi-targeting Framework Support
3.0
Visual Studio 2005
  1. Windows Presentation Foundation (WPF)
  2. Windows Communications Foundation (WCF)
  3. Windows Workflow Foundation (WF), and CardSpace
2.0
Visual Studio 2005
  1. Introduced CLR 2.0
  2. Generics and generic collections
  3. Partial classes
  4. Nullable types
  5. Anonymous methods
  6. Introduced many new controls and features to ASP.NET
1.1
Visual Studio .NET 2003
  1. Features Enhancement to ASP.NET and ADO.NET
  2. Built-in support for mobile ASP.NET controls
  3. Security Enhancement
  4. Built-in support for ODBC and databases
  5. Internet Protocol version 6 (IPv6) support
1.0
Visual Studio .NET
  1. Introduced CLR 1.0
  2. Support for Object-oriented Web application development
  3. Use of DLL class libraries


No comments:

Post a Comment