The .NET Framework is a development framework that provides a new programming
interface for developing different types of application such as:
Web application
Windows application
Web services
Mobile application
Windows Presentation Foundation (WPF) applications
Windows Communication Foundation (WCF)
Windows Workflow Foundation (WF)
And many more.
The key components of the .NET Framework are the common language runtime (CLR)
and the .NET Framework class library, which includes ADO.NET, ASP.NET, Windows
Forms, and Windows Presentation Foundation (WPF) etc
Objective:
To provide a consistent object-oriented programming environment.
To minimizes software deployment and versioning conflicts.
To provide consistent environment for developing different types of
applications, such as Windows-based applications and Web-based applications,
Windows Communication Foundation (WCF).
The code build on the .NET Framework can integrate with any other code.
To provide language Interoperability.
To provide language Independency.
The .NET Platform Goals:
language independence
Reliability
Security
Simplified Development
Language Interoperability
Language independence
.NET supports language independence that means you can develop the application
using any one of dozens of different languages, including the following:
Ada, COBOL, FORTRAN, JavaScript, PERL, Pascal, PHP, Python, Small Talk
Reliability
There are many programming languages and platforms in the commercial software
industry, but few of them attempt to provide both a reliable language. .NET
provides type safety. The Object class is the most base class. Every class in
.NET is derived from the Object class. It supports basic features such as
returning a string representation of the object, indicating whether the object
is equal to another, and so on. The CLR recognizes and verifies types before
they can be loaded and executed. This decreases the chances for programming
errors and prevents buffer overruns, which can be a security weakness.
Security
.NET provides a number of security features. Windows NT and Windows 2000 protect
resources using access-control lists and security identities. It also provides
the Code Access Security (CAS).It is a security system that allows
administrators and developer to control application authorization similar to
the way they have always been authorize users.
Simplified Development
Each time when you want to develop something in a different compiler, you had to
learn a new API or a class library, because there is no consistency among these
different libraries or interfaces. .NET solves this problem by providing a set
of framework classes that every language uses. Such a framework removes the
need for learning a new API each time you switch languages.
Language Interoperability
.NET supports not only language independence, but also language integration.
This means that you can create one class in VB and inherit it in another class
that is created in C#.You can also take advantage of polymorphism across
different languages. The .NET Framework makes this possible with a
specification called the Common Type System (CTS), which all .NET components
must support.