共享对象类别库
ASPNET 是共享对象类别库中的一员ASPNET 提供了一个Web 应用程序模型这模型提供了一些窗体控件及基础架构让程序设计师简单的建立Web 应用程序ASPNET 提供了一些对应HTML 元素(例如按钮清单盒等)的HTML 控件(HTML Controls第四章会提到)以及功能更强的Web 控件(Web Controls第六章会提到)这些控件在伺服端执行然后在客户端的浏览器以HTML 元素的方式显示这种HTML 控件在伺服端以对象导向的方式被程控让程序设计师享受到对象导向程序写作的优点简化程序的复杂性
使用者接口感应
ASPNET 另外一个重要的功能是这些控件被设计成可以适应客户端同样的一页可以被广大的客户端平台浏览换句话说Web 网页会侦测客户端所需的格式提供适合的网页提供给行动电话WML能力较差的浏览器提供HTML而IE 则提供DHTML
Web Services
ASPNET 也可让程序设计师把软件做成服务(Service Software在服务器中以提供服务的方式所存在的应用程序)的方式执行Web Services 是一种可以使用在因特网的程序逻辑和传统的应用程序可以使用操作系统提供的功能一样以因特网为基础的应用程序也可以利用WebServices 来增强本身的功能要解决应用程序间的整合以及把程序做成服务程序的方法就是使用Web Services(网站服务在网站中提供服务)Web Services 提供简单弹性并以标准模块的方法来建立透过因特网工作的应用软件因特网应用程序可以将Web Services 在不管是否不同平台不同程序语言所开发以及不管新旧的情形下轻松的做整合利用ASPNET的新功能可以简单的将企业法则写成Web 服务组件这时ASPNET 所提供的一些基础架构就负责透过SOAP 或是XML 等标准通讯协议来使用这些服务组件
Web Services
了解CLR 实际的运作
对NET Framework 有个概念之后我们再来了解CLR 实际的动作
CLR 的执行
首先程序代码先由编译器编译成IL同时相关联数据会由相关数据引擎(MetadataEngine)产生
这时候如果有不同的语言所编译成的IL 或机器码连结器(Linker)就可以将它连结进来并产生包含IL 的EXE 或DLL编译器的功能在这里就算完成了
这时当程序在执行的时候就是CLR 执行工作的时候程序中如果有任何使用到NETFramework 共享对象类别库的程序代码时会被对象类别加载器(Class Loader)载入并合并这时候被合并的程序代码在JIT 编译器执行之前可以透过查验器(Verifier)来检查型别安全
最后由JIT 编译器把程序代码编译成可以被CLR 所管理的机器码便可执行