1 什么是.NET Framework

.NET Framework 是Microsoft为开发应用程序而创建的一个富有革命性的新平台。

1.1 .NET Framework 的内容

.NET Framework主要包含一个非常大的代码库,可以在客户语言(如C#)中通过面向对象编程技术(OOP)来使用这些代码。这个库分为不同的模块,这样就可以根据希望得到的结果来选择使用其中的各个部分。其目的是,不同的操作系统可以根据自己的特性,支持其中的部分或者全部模块。例如:通用类型系统(Common Type System, CTS).

.NET 公共语言运行库(Common Language Runtime,CLR),它负责管理用.NET库开发的所有应用程序的执行。

1.2 用.NET Framework 编写应用程序

(1)使用某种.NET兼容语言(如C#)编写应用程序代码。

(2)把代码编译为MSIT,存储在程序集中。

(3)在执行代码时(如果这是一个可执行文件,就自动运行,或者在其他代码使用它时运行),首先必须使用JIT编译器将代码编译为本机代码。

(4)在托管的CLR环境下运行本机代码,以及其他应用程序或进程。

1.2.1 MSIL和JIT:

在编译使用.NET Framework库的代码时,不是立即创建操作系统特定的本机代码,而是把代码编译为Microsoft中间语言(Microsoft Intermediate Language,MSIT)代码,这些代码不专用于任何一种操作系统,也不专用于C#。显然,要执行应用程序,必须完成更多的工作,这事Just-In-Time(JIT)编译器的任务,他把MSIT编译为专用于OS和目标机器结构的本机代码。这样OS才能执行应用程序。

1.2.2 程序集

在编译应用程序时,所创建的MSIT代码存储在一个程序集中,程序集包括可执行的应用程序文件(这些文件可以直接在Windows上运行,不需要其他程序,其扩展名是.exe)和其他应用程序使用的库(扩展名为,dll)。

1.2.3 托管代码

在将代码编译为MSIT,再用JIT编译器将它编译为本机代码后,CRL的任务还没有全部完成,还需要管理正在执行的用.NET Framework编写的代码(这个执行代码的阶段通常被称为运行时(runtime))。即CLR管理着应用程序,其方式是管理内存、处理安全性,以及允许进行的跨语言调试等。

1.2.4 链接

在第(2)步中编译为MSIT的C#代码不一定包含在单独的文件中,可以把应用程序代码放在多个源代码文件中,再把它们编译到一个程序集中,这个过程称为链接。

《C#语言学习笔记》源码

最新文章

  1. JS简介
  2. js的动态加载、缓存、更新以及复用(一)
  3. ef to sqlite 实际开发问题终极解决方法
  4. MyEclipse8.5破解方法
  5. iOS ARC环境下dealloc的使用
  6. [windows驱动]标准驱动例程
  7. iptable原理
  8. ecshop 设置管理员
  9. Oracle管理基础
  10. SWFObject文件上传使用记录
  11. Google map v3 using simple tool file google.map.util.js v 1.1
  12. windows平台安装并使用MongoDB
  13. FPGA例化ROM存储表格
  14. 从javascript 调用angular的函数
  15. Nginx优化文件编写
  16. windows 驱动开发 MDL 内核层 用户层共享内存
  17. Android典型界面设计(7) ——DrawerLayout+Fragement+ViewPager+PagerTabStrip实现双导航
  18. 逻辑卷管理LVM(logical volume manager)
  19. Yii2 Restful api创建
  20. 异常处理(异常解析器) 和 对于Properties类型的属性的配置

热门文章

  1. 层次关系表格,不用递归,快速检索。HierarchyId
  2. Kafka笔记5
  3. python分布式编程(转)
  4. Hadoop 三剑客之 —— 集群资源管理器 YARN
  5. 用nodejs调用webservice
  6. Laravel --- 要点笔记
  7. POJ 3301:Texas Trip(计算几何+三分)
  8. ZOJ 3962:Seven Segment Display(思维)
  9. linux上mysql MM(双主)架构及keepalived搭建
  10. Oracle Goldengate是如何保证数据有序和确保数据不丢失的?