The .Net framework is a group of components that provide the developer with tools to support the creation of robust computer software programs. It is comprised of:
Development frameworks – are components that let us resuse previously written and tested software. Such as ASP.Net, WPF, Silverlight, LINQ, ADO.Net, WCF, WinForms etc… Therea are some very exciting plugins build on the .Net platform too, such as AJAX. all of which help to give the developer a jump start towards the development of network, GUI, data access, cryptography, internet and numeric algorithmic computer systems.
Base Class Libraries – the base class libraries give us a consistent object oriented programming context. Things like thread management, memory management, handling, security, etc… Libraries like System.Globalization, System.IO and System.Resources are part of the .Net Frameworks’ base class library.
Common Language Runtime – The Common Language Runtime or CLR is an abstract layer above the operating system. When a developer codes a software system they choose one of the many .Net programming languages like C#, for example. When the source code is compiled it is converted into a Common Intermediate Language (CIL) commonly called Bytecode. When the code is run the CLR converts the CIL into native code that can be executed on the specific operating system. Making computer programs created using the .Net Framework, platform independent.
Design
- Interoperability
- Language Independence
- Common Runtime Engine
- Base Class Library
- Simplified Deployment
- Security
- Portability
- Data Types
Architecture
- Common Language Infrastructure (CLI)
- Assemblies
- Metadata (for Reflection)
- Security
- Class library
- Memory management