注1:这篇文章主要是本人最近读了诸多关于.net framework相关的文章或者网摘之后的一点总结,相当于一个读书的笔记,以用来以后有了新的感悟便于对比。文中如出现了网络博文上的某些原创作者的段落还请大家积极的指出,本人会在最短的时间作出响应。
注2:同注1,本文仅仅代表自己的观点,如有错漏的地方还请大家指出,本人感激不尽。
写C#程序已经有3年多了,但是最近甚感惶恐。偶尔静下心来想想,觉得这几年来似乎毫无进步,遂决心从最基础的.net framework入手多看看前辈们是怎么理解的,也看看自己是否在这方面有所感悟。
正文:
.net开发平台的重要内容——.net framework。它是开发.net应用程序的核心基础(每当看到“核心”两个字,都觉得很重要,但的确如此).
目前为止一共发布了6个版本 1.0 、1.1、2.0、3.0、3.5、4.0。其4.5的版本尚未发布,网上的消息说,目前有开发者预览版,但是由于本人现阶段工作中所用的的基本是基于3.5来开发的,有个别测试的程序采用的是4.0(说来惭愧,用4.0的原因并不是想体验新的功能,而是在学习vs2010的使用的时候不小心选择的,从而导致在本机的iis7.5上部署的时候出问题了,才在网络上找了相关的文章来进行了解。)
.net framework的特点
1.提供了一个面向对象编程的环境,完全支持面向对象编程。在程序的可复用性、可扩展性、可维护性、灵活性有很大的提高。(这一点本人觉得主要是面向对象的特点。)
2.对Web应用的强大的支持。对Web Service 的支持。
.net framework 主要包括两个重要的组件
1.公共语言运行时 CLR(Common Language Runtime)
2.framework框架类库 FCL (framework class library)
CLR 可以看作一个在执行时管理代码的代理,管理代码是CLR的基本原则,能够被管理的代码被称为托管代码。而CLR也有包括两个重要的组成部分
FCL FCL是一个强大的类库,它为我们编写应用程序提供了大量的类库。如:namespaces 、System.Collections、System.IO等......
刚刚我提到了CLR有两个重要的组成部分
1.通用类型系统 CTS(Common Type System)
2.公共语言规范 CLS(Common Language Specification)
CTS 刚刚提到了CLR主要是用来进行代码托管的,而CLR下面的几种托管代码(vc++.net、C# 、vb.net、vj#等)他们的语法和数据类型各不相同,而CLR是如何对不同的语言进行托管的呢?而CTS就是用来解决这个问题的,CTS会将几种不同的语言变异成通用的类型,以便于.net语言共享这一类型系统,在它们之间实现无缝互操作。
CLS 是一种最低的语言的标准,指定了一种以.net平台为目标的语言所必须支持的最小特征,以及该语言与其他.net语言之间实现互操作性所需要的完备特征。凡是遵守这个标准的语言在.net框架下都可以实现互相调用。