概述
Microsoft.Net代表了一个集合、一个环境、一个可以作为平台支持下一代Internet的可编程结构,它通过使用HTTP,XML等标准,使得各个系统平台间互操作性成为现实,Microsoft.Net最重要部分是.Net框架,.Net框架是一种新的计算平台,它简化了在高度分布式Internet环境中的应用程序开发,它支持超过20种不同的编程语言,它帮助开发人员把精力集中在实现商业逻辑的核心上,使开发人员的经验在面对类型大不相同的应用程序(如基于Windows 的应用程序和基于Web的应用程序)时保持一致,在未来的版本中甚至仅仅在程序发布时才需要指定发布的类型(作为Win Form还是Web Form)。
![](https://i-blog.csdnimg.cn/blog_migrate/28edf1159defba5e0fcb413162fd14eb.png)
如上图,.Net框架由2部分组成:公共语言运行时(CLR:是.Net开发人员的源代码和硬件底层之间的中间媒介,所有的.Net 代码都在CLR中运行)和框架类库(FCL:包括数据访问组件、基础类库以及WebForm、WinForm、Web Services模板)。
功能特性
CLR和FCL紧密结合在一起,提供了不同系统之间交叉与综合的解决方案与服务,创造了可控的、安全的、功能丰富的应用开发环境,以下是它们提供的部分功能。
一次运行,总能运行:所有的开发人员几乎都知道“Dll Hell”版本控制问题(当新安装的应用程序的组件覆盖旧有应用程序的组件时,导致旧有程序无法正常运行)。为了彻底消除“DLL Hell”现象,.NET框架的结构已与应用程序组件隔离,应用程序运行时必须加载生成时所用到的组件以确保应用程序总是能正常运行。
简化部署:在.NET框架里软件安装的方式是XCOPY,如同在DOS下一样,只需要将应用程序复制到某个目录就完成了安装,卸载应用程序只需要删除目录。
自动内存管理:对于托管资源您再也不必在类里写析构函数(Finalize)进行清理,垃圾管理(GC)可以自动跟踪资源使用,确保不会产生资源泄漏,实际上GC对Finalize的调用时间和次序是不确定的。但是微软建议用户一定要记得在Dispose 方法里释放非托管资源如数据库连接、文件等。
类型安全:每个对象都是单根继承自Object(注:也有人认为是继承自Iobject接口)以确保在运行时可以通过调用GetType方法可以确定对象的类型,通常强制转换为基类型被认为是安全的隐式转换。CLR可以验证所有代码是否类型安全,类型安全能确保总是以兼容的方式访问被分配对象。
(未完待续)