.Net Framework and its Principle
.NET Framework is called an environment that manages the execution which conceal a multiplicity of features to running applications. It includes two main components. They are common language runtime which short form is CLR and framework class library which short form is FCL. CLR is the execution engine. It grips the running applications. FCL has a huge library containing code which can be reused. Developers reuse them by calling them from their own applications. Many types of programming languages can be utilized from .Net Framework like web application, desktop application, mobile application, etc.
To give a software-execution environment in which software applications will be deployed and conflict of versions will be prevented. It also prevent the safe execution of code containing the code by the third-party application.
To contribute a reliable object-oriented programming environment to district execute object code.
To figure all industry communications standards to make sure the code can interact with each other or not.
Features and Characteristics
Memory management: Programmers are responsible and has to take time for slicing and publishing the memory and to handle the life time of the object in other types of programming languages. In .NET programming language, handling these kinds of things are not required for the developers because of CLR in .Net Framework. It has automatic memory management services.
As an example, the runtime manages references to the objects and handles the object storage while the application is being utilized and then release them while they are no longer being used. This happens automatically. The two most common app errors, invalid memory references and leak of memory are solved because of this.
Security: Two security features: Code Access Security (CAS), and validation/verification exists in .Net Framework. CAS is based on the evidence or indication which is collaborated with specific assembly or cluster. The evidence is the origin of the cluster which is installed on the local computer or downloaded from the Internet. CAS utilizes evidence to incline the acceptance allocated to the code. Every cluster of each method in the calling of variables will be audited for the required acceptance; if any cluster is not allocated the acceptance a security omission is bunt. Managed CIL bytecode is simpler to opposite-engineer than native code but they are really complicated. .NET decompiler programs set up the developers with no opposite-engineering skills to prospect the source code behind complicated .NET assemblies.
Interoperability and Language independence: In traditional programming languages, their own compiler can only compile them. That’s why cross-language integration is really hard to do. It can also be impossible. But in .NET Framework, basic types are defined by the common type system which is called CTS. They are common to all languages that target the .NET Framework and hence cross-language integrity is possible in .Net Framework. This is also done by CLS (common language specification) as it defines the rules in which the developers of various types of different languages have to obey to make interaction between different application parts. So, the programmers can utilize the preferred language to write different parts of only one project until the last stage.
Robust: We can say it is robust as it includes the techniques for exception handling. Exceptions can be said as runtime problems. These problems appear when a user enter invalid data, a file that requires to be opened cannot be found and when there is no enough memory to run the application. These kinds of problems are handled by exception handling techniques in .Net Framework. Developers can also make the exceptions and show relevant messages for the users to be understood easily.
DLL Hell can cause the conflicts when versions of the same application are installed in the same computer or laptop and run. Version Compatibility prevent that. Older .Net Framework applications can be run on the latest .Net Framework version. That is because of backward compatibility which .Net Framework support.
This is done by side-by-side execution. The .Net Framework solves version conflicts as it allows multiple versions of Common Language Runtime (CLR) to exist in the same computer or laptop. Therefore, different .Net Framework application versions can be run on the latest .Net Framework version.
Portability: Implementation of Common Language Infrastructure (CLI) make the .Net Framework portable. It has all the characteristics of .Net framework and invest Cross Platform running of application that are developed through MONO CLR. It can run on any types of Operating System not only in Window but also in Linux OS, OS X of apple products and much more other OS.