1 .NET Framework的核心是其运行库执行环境,即公共语言运行库(CLR)或.NET运行库,一般将CLR控制下运行的代码称为托管代码(managed code)。

在CLR在执行编写好的代码之前,需要将代码进行.NET编译,编译分为两个阶段

(1)把源代码编译为Microsoft中间语言(IL:中间语言是一种低级语言,语法简单,可快速转换为本地机器码,IL是即时编译的,称为JIT编译,编译为中间语言可以获得.NET的语言优点:1.平台无关性,2.提高性能,3.互操作性)。

(2)CLR把IL编译为平台专业代码。

.NET的语言优点:

1.平台无关性:包含字节码指令的同一文件可以放到任一平台中,编译为中间语言后就可以获得.NET的平台无关性。

2.提高性能:代码编译完一次后,得到的本地可执行程序就存储起来,直到退出该程序为止,当下次运行这部分代码时就不用编译,从而提高性能

3.互操作性:编译为中间语言的代码可以与从其他语言编译过来的代码进行交互操作。

随机推荐

  1. 从零开始学android开发-查看sqlite数据库

    C:\Users\Administrator>cd E:\ProSoft\adt-bundle-windows-x86-20140321\sdk\platform-tools

  2. Webx学习(一)

    什么是webx Webx3_Guide_Book中是这样介绍的: Webx是一套基于Java Servlet API的通用Web框架. Webx致力于提供一套极具扩展性的机制.来满足Web应用不断变化 ...

  3. CentOS安装Nginx安装详解

    一.准备工作,安装依赖包,缺一不可!(推荐先用命令查看自己是否已经安装一下软件,确认没有再安装) --------------------------------------------------- ...

  4. Mysql 5.5 replication 多数据库主从备份Master-Slave配置总结

    配置Mysql server 5.5 的双机备份,也就是master-slave模式.本例子还是一个多database复制的情况. 现在有两个database在同一台mysql server,也就是m ...

  5. [React Fundamentals] Owner Ownee Relationship

    The owner-ownee relationship is used to designate a parent-child relationship with React components ...

  6. python无私有成员变量

    python解释器将__init__函数里的__z变量转成 _classname__z了,明确规则后外部依旧能够通过实力对象来訪问. In [1]: class aa: ...: def __init ...

  7. iOS开发——高级技术&广告功能的实现

    广告功能的实现 iPhone/iPad的程序,即使是Free的版本,也可以通过广告给我们带来收入.前提是你的程序足够吸引人,有足够的下载量.这里,我将介绍一下程序中集成广告的方法.主要有两种广告iAd ...

  8. WebService 设计总结

    接触过非常多电商的WebService,有种一看就蛋疼的设计,今天要从这个反例说一说 WebService 的设计. [WebMethod] public string QueryOrderDetai ...

  9. [node.js]RPC(远程过程调用)的实现原理

    刚接触到RPC(远程过程调用),就是可以在本地调用远程机子上的程序的方法,看到一个简单的nodejs实现,用来学习RPC的原理很不错:nodejs light_rpc   使用示例:   //服务端 ...

  10. 关于Android模拟器键盘不能使用的解决方法

    很多朋友遇到一个问题,自己搭建完了Android环境后,启动模拟器体验Android系统,但是发现不能使用键盘方便的输入内容,如下图: 同时,使用笔记本的键盘也无法输入内容,只能通过模拟器内置的输入法 ...