The. Net Framework Framework diagram is detailed

Source: Internet
Author: User

Reproduced from: http://www.cnblogs.com/cs_net/archive/2010/09/15/1826558.html
The. Net Framework framework diagram, see many times, until today, actually I didn't understand. Today, 3 charts are drawn from a number of graphs to summarize your understanding of the. Net Framework framework.

This picture has been seen many times, never knowing what it is used to characterize. The personal understanding is that it shows a way to write software or to say so. NET platform to develop software ideas and norms. The true. Net Framework framework contains only two parts, the common language runtime (Clr:common Language Runtime) and the Framework class library (Fcl:framework class libraries).

Can imagine oneself is a software project manager, very unfortunate is the hand inside the programmer has proficiency in VB, VC + + and C # Programmer each one, so how to make these programmers writing to develop the same project? Previously impossible tasks are possible under the. Net Framework, and these programmers develop projects in the way they are proficient in:

First tier: Programmers use their familiar ways to complete their own modules, which may use different development languages.

Second tier: But how do you integrate the code with different language development? Implemented through the common Language Specification (Cls:common Language specification), the Common Language Specification abstracts common parts from various programming languages and provides support for various programming languages in the form of COM components. Also, common type systems (Cts:common type System). NET platform is one of the important features that it provides. NET standard set of data types and criteria. Strictly speaking, the CLS is a subset of the CTS. Modules of different programming languages, which are translated through COM components into the language supported by the CLS, the Microsoft intermediate language MSIL (Microsoft Interspace Language), and the related data types are converted to the types used by the CTS, such as: int converts to System.Int32 type, string to System.String type, etc.).

The third and fourth floors are. NET most important components, these development components are the programmer needs and can operate the thing, each development component represents one kind of application development direction, is some kind of application framework. If the first two layers are just a process of how different programming languages achieve unification, these two layers are used. NET provides a variety of components for the specific development process.

The fifth and sixth layers are the real. Net Framework framework. All the work you've done before can be thought of as. NET various development components support the process of encoding. Starting from these two levels is the programmer to complete the coding after the completion of debugging and Operation phase. When the program code executes a build operation, the common language runtime (CLR) connects the Framework class library (FCL), extracts the required class library, and compiles it into the code represented by the Microsoft intermediate Language (Msil:microsoft interspace Language). These include FCL for API (Windows application Interface) invocation-level functions, such as console processing, file processing, database processing, network processing, desktop processing, and web processing. The CLR, then, is similar to Java virtual machines, which are used to provide running under different platform systems. NET application environment. Of course, in order to maintain the market benefits of Microsoft's operating system, Microsoft is obviously unwilling to allow other systems to run easily. NET program, but this is only a marketing strategy rather than a technical issue. The contents of the Framework class library FCL are shown below:

Finally, when the program runs, it is compiled two times by the JIT (just in time) compiler in the CLR, compiling the intermediate language into machine code and executing the program. During the development phase of the program, the code is saved after the first compilation (build operation) and converted to the intermediate language, and JIT is responsible for compiling two times when the program is run. So. NET compilation-terminated. exe file is actually a code file represented in the intermediate language. When the program is double-clicked, the intermediate language is interpreted as machine code and executed by JIT. The following diagram of the execution process:

For the data types of the C # language, the following figure:

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.