Loading...
Friday 10 April 2020

Introduction to .Net Framework

What is .Net Framework?

In June 2000 , Microsoft announced its .NET initiative, a broad new version for embracing the Internet and Web in the development , engineering, and use of Software. One Ky aspect of the .NET strategy is its independence from a specific programming langue or platform. The .Net Framework is  platform and infrastructure for creating, compiling, debugging,  deploying and running different kinds of applications and services using .Net technologies.  The first version of .Net Framework was released in 2002 which is called .Net Framework 1.0, than it come a long way and now at the time of creating this tutorial it current version is  4.8.0.

.Net Framework was designed to create applications using different programming language in a single software platform. All Microsoft languages runs inside .Net Framework and it allows multiple languages to communicate, just developers choose the language to create  required software application. Rather than forcing developers to use a single programming language, developers can create a .NET application in any .NET compatible language. Programmers can contribute to the same software project writing code in the .NET languages (such as VB, C#, ASP,Visual C++ and others) in which they are most competent.  .Net supports programming languages like,  Visual Basic, C#, F# , Visual C++ etc. So  same platform can be used by Visual Basic developer, C# developer, F# developer, Visual C++ developer  etc . for making applications. The .Net Framework can be used to minimize software development, deployment and versioning conflicts.

.Net Framework architecture 

The .Net Framework was designed to build platform independent applications, that can run on PCs with different hardware and software combination. Through this framework it become possible for clients and servers to communicate with each other in a vendor independent manner. The .NET architecture can exist on multiple platforms, further extending the portability of .NET Programs. The key component of the .NET architecture is Web services, which are applications that can be used over the Internet. Clients and other applications can use the Web services as reusable building blocks. The .NET strategy extends the concept of software reuse to the Internet, allowing programmers to concentrate on their specialties without having to implement every component of every application. Instead, companies can buy Web Services and devote their time and energy to developing their products. The .Net Framework architecture consist of various components , but there are three essential components of a very basic architecture, they are are 1. language, 2. FCL - Framework Class Libraries and 3. CLR  - Common Language Run-time. This is show in following figure.
.net framework architecture
.net framework architecture 

Data stored using .NET framework is accessible to a user from any device , at any time , through any .NET compatible device. The .Net framework is a programming platform that is used for developing windows , web based and mobile software. It has a number of pre-coded solutions that manage the execution of programs written specially for the framework. The .Net framework platform based on two basic technologies for communication of data, i.e. XML and The suite of protocols
1. XML (Extensible Markup Language)
XML separates data from presentation , it unlocks information that can be organized , programmed and edited. It allows websites to collaborate and provide groups of web services, thus they can interact with each other. It provides a way for data to be distributed to a variety of devices.
2. The suite of protocols 
The .NET framework is also built on Internet protocols such as HTTP (Hyper Text Transfer Protocol ), SOAP (Simple Object Access Protocol).

In traditional Windows applications , code were directly compiled into executable native code of the operating system. However, using .Net framework the code of a program is compiled into common language code (CIL)  or simply called IL (intermediate Language Code, which is formerly called MSIL(Microsoft Intermediate Language) code and stored in a file called assembly. The assembly is then compiled by CLR (Common Language Run-time) to native code at run-time. Following figure show the process of conversion IL(Intermediate Language code) into native executable code.
Intermediate language code il to native code conversion
process of conversion intermediate language - IL code to native code

.Net Framework fundamentals:

The .Net Framework is an essential component of Windows for developing, deploying and running next generation software applications. 
The .Net framework is designed to:
  • Provide consistent object oriented programming environment. 
  • Minimize software application deployment and versioning conflicts by providing a  code execution environment. 
  • Promote safe execution of code by providing a code-execution environment.
  • Provide a consistent developer experience across varying types of applications such as Windows based applications and Web based applications. 

.Net Framework components 

  1. CLR
  2. FCL
  3. CLS
  4. CTS
  5. Base Framework classes 
  6. ASP.NET 
  7. ADO.NET 
  8. WPF
  9. WCF
  10. LINQ
  11. ADO.NET Entity Framework 
  12. Parallel LINQ
  13. Task Parallel Library 

What is Common language Run-time - CLR

CLR stands for Common Language Run-time is an execution environment of .NET Framework. It is backbone of .Net Framework, which offers many functions like code execution , memory management , code safety verification, garbage collection and error handling. The applications which runs under CLR are called Managed Code. 

What is Framework Class Library - FCL

FCL stands for Framework class library is the collection of classes, value types, interfaces, namespaces which are used by .NET  applications. FCL is integrated with Common Language Runtime and consist of thousands of classes which  support various functions such as Support for exception handling, access to data,  communication with underlying system, input / output and stream operations , support for creating windows based  and web based applications and web services. 

Categories of functions in Framework Class Library - FCL

There are three categories of functionalities in FCL i.e. utility features, wrappers around operating system functionality , and Frameworks. 

  1. Utility Features : The utility features in Framework Class Library consist of different collection classes like dictionary, queue, stack etc. and classes for various manipulations like regex for regular expression. 
  2. Wrappers around OS functionality: The Wrappers around Os functionality consist of  classes for file system, classes used to perform network functions, and the classes which are used to handle input output functions for console application etc. 
  3. Frameworks: There are different frameworks present in the FCL to develop different kinds of applications such as Windows Applications, Web Applications, Web Services. These frameworks are Active Server Pages.NET - ASP.NET , Windows Presentation Foundation - WPF etc.


Namespaces in Framework Class Library  - FCL

Namespace is way to organize related classes and interfaces which can be used in .NET Framework. Different groups of related classes are grouped in a different namespace. Some of the namespaces available in FCL are given in following table. 

Namespace
Description
System
It contains all common data types, methods used for data conversion, arrays and string values.
System.collections
System.collections namespace includes interfaces and classes which define different collection objects like, dictionaries, hash tables, bit arrays, queues and lists.
System.Configuration
Cosmist of configuration classes for machine or application.
System.Data
Includes classes for database operations
System.Drawing
Contains classes for GDI+basic graphics functionality. Also it contains different child namespace to handle advanced image functionality and vector graphics functionality.
System.globalization
It includes classes for language, calendars , country, date format patterns etc.
System.IO
In contains classes for file input output  , data compression etc.
System.Linq
Includes  different types which supports Language Integrated Query (LINQ)
System.media
It handles classes that enables integration of rich media and handle sound files
System.net
It includes simple programming interface for many of the protocols used on networks.
System.reflection
System.reflection namespace includes types that can retrieve information regarding modules, assemblies, parameters etc.
System.security
This namespace provide authentication , cryptographic and has security system and permissions.
Microsoft.Csharp
This namespace has support of compilation and code generation for the C# source code.
Microsoft.VisualBasic
This namespace has support of compilation and code generation for the VB source code

What is Common Language Specification - CLS

CLS or common language specification is a subset of Common type system (CTS), which defines  a set of rules and restrictions, which are following by .Net Languages to create applications. 

What is Common Type System - CTS

CTS or common type system is standard which describes how type definitions and specific values of types are represented in memory. It allows programs written in different .net languages to easily share information. 

What are Base Framework classes 

The set of classes which provide basic functionality like string manipulation, input / output , network communication, security management and so on. 

What is ASP.NET ?

ASP.NET stands for active server pages.net is language which is used to build web applications. ASP.NET Web Applications can be developed with ASP.Net Web Forms, ASP.NET Web Pages, ASP.NET MVC and ASP.NET Core. 

What is ADO.NET ?

ADO.NET stands for Active Access Data Object.net is set of classes used to interact with databases. 

What is WPF ? 

Windows Presentation Foundation or WPF is a UI framework which is based on XML and vector graphics. It uses 3D computer graphics hardware and Direct 3D technologies to create windows desktop applications. 

What is WCF?

Windows Communication Foundation or WCF is a framework for building service oriented applications. It allows programs to asynchronously send / receive data from the service endpoint. 

What is LINQ?

LINQ or language integrated query is a set of technologies which simplifies working with data present in different formats in various data sources. LINQ offers a consistent model for working with that data. 

What is ADO.NET Entity Framework? 

It is a set of technologies which are built upon ADO.NET. The classes in entity framework enables creating data-centric applications  in object oriented manners. 

Parallel LINQ

It is a group of classes which support parallel programming using Language Integrate Query (LINQ).

Task Parallel Library 

It is a library which simplifies concurrent and parallel programming in a .Net Application. 

components of .net framework
components of .net framework

0 Comments:

Post a Comment

 
TOP