1 .net
.net
- 本质上是一个运行库执行引擎(mscoree.dll)和基础类库(mscorlib.dll等)。
- CLR可以承载任何符合托管代码规则的.net二进制文件(即程序集).
- 程序集中有很多CIL指令(以及类型元数据和程序集清单)
CIL common intermediate language 公共中间语言
托管代码 只能在.net运行库中执行的C#代码
assembly 程序集. 托管代码编译后的二进制单元
metadata 元数据. 详尽的描述了二进制文件中每个类型的特征
manifest 清单. 描述程序集的元数据
JIT just-in-time 即时编译CLR common language runtime 公共语言运行库
运行库环境:定位,加载和管理.net类型.同时负责低层细节工作:内存管理,应用托管,处理线程,安全检查CTS common type system 公共类型系统
描述CLR所支持的数据类型和编程结构,指定这些实体如何交互.
规定了类型如何定义才能被CLR承载
.net级别的类型- 类 5, - 接口(对一些方法的抽象,一个类可以实现多个接口,只能实现一个抽象类) 8, - 结构(一种基于值的语义的轻量级的类 类型) 4, - 枚举 4,有语言意义的键代表数字值 - 委托 类型安全的函数指针
CLS common language specification 公共语言规范
描述了支持.net编译器必须支持的最小和完全的特征集.
是.net语言(c#,vb,f#..)都支持的公共类型和编程结构的子集CLI common language infrastructure 公共语言基础设施
实现.net程序集跨操作系统
BCL base class library 基础类库
COM component object model 组件对象模型 语言无关性:VB开发者可以用C++构建的COM库
2 构建C#程序
SDK .net framework 4.5 software development kit .net开发工具集
SDK包括托管的编译器,命令行工具,示例代码,.net类库及文档系统.
然后可以用c#编译器(cxc.exe)甚至notepad开发,但有visual studio..