2008年10月29日星期三

CLR via C#学习笔记(3)--FCL和CTS

FCL也就是Framework Class Library,是.Net Framework的一个重要的组成部分,它是一系列DLL程序集的统称,这些程序集包含了数千个的类型的定义,每个类型都揭示了一些功能。同时MS也发布了很多其他的类库,比如WinFx和DirectX SDK,这些附加的类库提供了更多的类型,也揭示了更多的功能。下面是一些常用的类库:

Web Service: 包含一系列特殊的方法,以方便用户轻松的处理通过Internet发送的基于XML的信息。

Web Form: 提供了一系列基于HTML的应用程序(网站),通常用于查询数据库和调用Web服务,合并和过滤返回的信息,然后通过一个基于HTML的用户界面,在浏览器中来显示那些信息。

Windows Form: 其实就是一系列Windows GUI应用程序,开发人员通过Windows Desktop 提供的更强大的功能来创建应用程序的GUI。Windows Form可以利用控件、菜单以及鼠标/键盘事件,而且可以直接与底层的操作系统交换信息,也可以查询数据库和使用Web服务。

Windows Console Application: 控制台应用程序提供了一种快速、简单的方式来生成一个应用程序,比如编译器、应用程序和工具通常作为控制台应用程序来实现。

Windows Services: .Net Framework提供了生成"服务"应用程序的功能,它们可以使用Windows Service Control Manager来进行控制。

Component Library: .Net Framework可以生成独立的程序集(组件),其中包含的类型可以轻松的集成到前面提到的任意一种类型中。

由于FCL中包含非常多的类型,所以将相关的一系列类型放到一个单独的命名空间中是很有必要的。比如System命名空间包含Object基类型,其他所有类型都是从基类型继承而来的。


CTS是MS制定的一个有关类型的正式的规范,也就是Common Type System。它已被MS提交给ECMA已完成标准化工作。

CTS规范规定:一个类型可以包含零个或者多个成员,先简单的介绍下这些成员:

Field: 它是对象状态一部分的一个数据变量,不同的字段按照其名称和类型加以区分。

Method: 用Structure Programming的说法来说,其实Method相当于一个Function,它针对对象执行一个操作,通常它会改变对象的状态。Method有一个Name,一个Signature和一个或多个Modifier:Signature制定了参数的数量、类型及其顺序;参数的类型;Method是否有返回值,如果有的话还要制定返回值的类型。

Property: C#他老爸Anders从他的Delphi中搞来的一套重要的思想:Property对于调用者(前台使用人员)来说,它看起来就像是一个Field,然而对于具体的实现者(后台开发)来说,它看起来却像是一个或是两个Method。总而言之,Property提供了一种更人性的实现Accessor/Modifier的途径。

Event: 事件在对象以及其他相关对象之间实现了一个通知机制,比如说,利用按钮提供的click事件,可以方便的在按钮被点击之后通知其它对象。

没有评论: