可用操作系统的服务 Windows提供了比其它作业平台更丰富的服务及资源,例如众多的数据存取服务、使用系统所 提供的整合安全模式来做身分验证及保全的工作、交互式的使用者接口、成熟的对象模块、交易 程序监视以及讯息队列服务。 NET Framework当然也将这些操作系统所提供出来的功能包装起 ,以更简单的方式提供程序设计师使用。 Micros netFramework 微软 NET Framework的标志。 NET Framework概要 NET Framework:就是微软 Web services引擎 有许多程序设计师和使用者,非常渴望有一个完善而且透明清楚的基础架构,来建立Web Services(因特网服务)。 NET Framework就是为了这个需求,而提供的基础架构。NET Framework提供了应用程序模型及关键技术,让开发人员容易以原有的技术来产生、布署,并 可以继续发展具有高安全、高稳定,并具高延展的 Web services。对于 NET Framework而言, 所有的组件都可以成为 Web services, Web services只不过是另一种型态的组件罢了。微软将 cOM的优点整合进来,它可以不用像COM那么严谨的来栓锁两个对象, NET Framework以 松散的方式来栓锁 Web services这种型态的组件。这样的结果让开发人员非常容易的发展出强 而有力的wveb服务组件,提高了整体的安全及可靠性,并且大大的增加系统的延展性 NET Framework:由三个部分组成 NET Framework的目的就是要让建立 Web services以及因特网应用程序的工作变的简 单, NET Framework包括了三大部分:第一个部分是 Common Language Runtime(CLR,所
可用操作系统的服务 Windows 提供了比其它作业平台更丰富的服务及资源,例如众多的数据存取服务、使用系统所 提供的整合安全模式来做身分验证及保全的工作、交互式的使用者接口、成熟的对象模块、交易 程序监视以及讯息队列服务。.NET Framework 当然也将这些操作系统所提供出来的功能包装起 来,以更简单的方式提供程序设计师使用。 微软 .NET Framework 的标志。 .NET Framework 概要 .NET Framework: 就是微软 Web Services 引擎 有许多程序设计师和使用者,非常渴望有一个完善而且透明清楚的基础架构,来建立 Web Services(因特网服务)。.NET Framework 就是为了这个需求,而提供的基础架构。.NET Framework 提供了应用程序模型及关键技术,让开发人员容易以原有的技术来产生、布署,并 可以继续发展具有高安全、高稳定,并具高延展的 Web Services。对于 .NET Framework 而言, 所有的组件都可以成为 Web Services,Web Services 只不过是另一种型态的组件罢了。微软将 COM 的优点整合进来,它可以不用像 COM 那么严谨的来栓锁两个对象,.NET Framework 以 松散的方式来栓锁 Web Services 这种型态的组件。这样的结果让开发人员非常容易的发展出强 而有力的 Web 服务组件,提高了整体的安全及可靠性,并且大大的增加系统的延展性。 .NET Framework: 由三个部分组成 .NET Framework 的目的就是要让建立 Web Services 以及因特网应用程序的工作变的简 单,.NET Framework 包括了三大部分:第一个部分是 Common Language Runtime(CLR,所
有NET程序语言公用的执行时期组件),第二部分是共享对象类别库(提供所有NET程序语 言所需要的基本对象),第三个部分是重新以组件的方式写成的 ASP,NET(旧版本则是以aspd 提供ASP网页所需要的对象)。 Net framework ASP. Net 共用物件類別庫 Common Language runtime Windows 作業系铳服務 (M+,交易,訊息佇列等) NET Framework由三部份组成: Common Language Runtime、共享类别库,以及 ASP. NET, 并且架构在系统服务之上。 Common Language Runtime(CLR)架构在操作系统的服务上,它负责应用程序实际的执行, 满足所有的应用程序的需求;例如内存管理、处理安全问题、整合不同的程序语言等等。 Runtime 供了许多帮助程序写作的简化,以及应用程序的部署并同时加强程序稳定可靠的一些服务。不过 程序设计师实际上不会被 Runtime所影响,因为他们所面对的是架构在CLR上面的共享对象类 别库,这个共享对象类别库可以被任何程序语言所使用。在这个类别中包含了以建构Web为基 础的应用程序模型,提供以架构Web服务与Web应用程序为目标的组件及服务,这个就是我 们要讨论的 ASP. NET
有 .NET 程序语言公用的执行时期组件),第二部分是共享对象类别库(提供所有 .NET 程序语 言所需要的基本对象),第三个部分是重新以组件的方式写成的 ASP.NET(旧版本则是以 asp.dll 提供 ASP 网页所需要的对象)。 .NET Framework 由三部份组成:Common Language Runtime、共享类别库,以及 ASP.NET, 并且架构在系统服务之上。 Common Language Runtime(CLR)架构在操作系统的服务上,它负责应用程序实际的执行, 满足所有的应用程序的需求;例如内存管理、处理安全问题、整合不同的程序语言等等。Runtime 供了许多帮助程序写作的简化,以及应用程序的部署并同时加强程序稳定可靠的一些服务。不过 程序设计师实际上不会被 Runtime 所影响,因为他们所面对的是架构在 CLR 上面的共享对象类 别库,这个共享对象类别库可以被任何程序语言所使用。在这个类别中包含了以建构 Web 为基 础的应用程序模型,提供以架构 Web 服务与 Web 应用程序为目标的组件及服务,这个就是我 们要讨论的 ASP.NET
Common Language Runtime (CLR) Common Language Runtime Net Framework 編譯器 ASP. Net 記憶體管理 共用物件類別庫 保密機制 Common Language Runt ime 公用語言規格(CLS) 載入器 Common Language Runtime所负责的工作 想要执行由某种特定程序语言所开发出来的程序,计算机内部必需装置这种特定程序语言的执行 时期( Runtime)组件才可以。例如想要执行以VB所撰写的程序,计算机内就必须有安装VB 的 Runtime组件( msybym.d)才可执行:而其它诸如由Java或是vC++等的程序语言所写 成的软件,也是需要 Runtime组件才能执行。为什么 Runtime组件如此重要?这是因为 Runtime 组件内部有该种程序语言所需要的一些核心功能,例如提供该种语言所需要的基本函式及对象等 等:所以当程序在执行时会动态的连结到 Runtime组件,取得所需要的功能。但是不同的程序 语言所需要的 Runtime不一样,所以会造成程序设计师在开发时的困难。另外在浏览网页时 如果该网页有包含有类似以VB这种程序语言所开发的 Activex控件时,除该控件会被下载外 如果使用者没有安装VB的 Runtime组件,那么执行起来会发生些问题。所以为了要解决上述的 问题, NET Framework在发展时,设计了让所有NET的程序语言共同使用的 Runtime组件 这个组件的名称就叫做 Common Language Runtime(CLR)。CLR是一个高效率的执行引擎, 程序代码的执行是由 Runtime所管理, Runtime负责的工作有产生对象、方法( methods,对象 所能执行的动作称之)的呼叫等等, Runtime也可以提供程序代码一些额外的服务。我们把要透 过cLR的控制,才能执行的程序代码称为 Managed Code
Common Language Runtime(CLR) Common Language Runtime 所负责的工作。 想要执行由某种特定程序语言所开发出来的程序,计算机内部必需装置这种特定程序语言的执行 时期(Runtime)组件才可以。例如想要执行以 VB 所撰写的程序,计算机内就必须有安装 VB 的 Runtime 组件(msvbvm.dll)才可执行;而其它诸如由 Java 或是 VC++ 等的程序语言所写 成的软件,也是需要 Runtime 组件才能执行。为什么 Runtime 组件如此重要?这是因为 Runtime 组件内部有该种程序语言所需要的一些核心功能,例如提供该种语言所需要的基本函式及对象等 等;所以当程序在执行时会动态的连结到 Runtime 组件,取得所需要的功能。但是不同的程序 语言所需要的 Runtime 不一样,所以会造成程序设计师在开发时的困难。另外在浏览网页时, 如果该网页有包含有类似以 VB 这种程序语言所开发的 ActiveX 控件时,除该控件会被下载外, 如果使用者没有安装 VB 的 Runtime 组件,那么执行起来会发生些问题。所以为了要解决上述的 问题,.NET Framework 在发展时,设计了让所有 .NET 的程序语言共同使用的 Runtime 组件, 这个组件的名称就叫做 Common Language Runtime(CLR)。CLR 是一个高效率的执行引擎, 程序代码的执行是由 Runtime 所管理,Runtime 负责的工作有产生对象、方法(methods,对象 所能执行的动作称之)的呼叫等等,Runtime 也可以提供程序代码一些额外的服务。我们把要透 过 CLR 的控制,才能执行的程序代码称为 Managed Code
共用物件類別庫 Web類別(AsP.Net) Net Framework 控制項丶快取、保密、 Session 以及環境設定等 ASP Net 資料(AD.Net) Windows表單 共用物件類别庫→ AD0SL、型別 元件丶表單等 XML類 繪圖類別 XSLT、Path 繪圖、影像 Common Language Runt ime Ser ial izat ion等 以及文字等 系統類別 集合、10丶保密機制、執行緒丶 回應丶訊息、診斷等 CLR执行引擎 ntermediate Language及 Just in time编译器 在了解CLR所扮演的角色后,我们要介绍L( Intermediate Language)以及JT( Just in time 编译器。旧版的ASP是以直译的方式一行一行的执行程序,所以如果网页程序太复杂或是浏览 人数变多,或是服务器负载变重,其执行的效率可想而知。 ASP. NET为了改善执行的效率,以 及让程序将来可跨平台执行,所以便设计了‖L以及JT编译器。‖这种架构非常接近机器码, 可以非常有效率的透过J冮T编译器转换为机器码:而透过J∏编译器所编译出来的机器码还是被 CLR所管理。儿L含有许多广泛的指令,不但包括对象的加载、排序、初始、以及方法呼叫的指 令(关于对象、方法等,第三章有详细的讨论),而且还有算数暨逻辑运算、流程控制、直接内 存存取,以及例外处理的指令。不过因为每个CPU的架构都不一样,所以‖不能够直接执行 必需透过JT编译器先转换成被cPU所认识的指令后才可执行。只要有支持该种CPU架构的 J冮编译器,就可以把编译成可以在该CPU架构上执行的机器码,这意味着l透过各种JT 编译器将可以跨平台。而Ⅱ这种格式又非常接近机器码,直接由这种格式透过JT编译器编译 成机器码的速度又非常的快,所以第一次执行aspx网页时需要编译成儿效率较差外,尔后只要 aspx网页没有异动过,就只要从L透过JT编译器编译成机器码就可以执行,效率当然比以前 的ASP网页以直译器来执行的效率提升许多。编译成‖也有另外一个好处,那就是只要该种程 序语言可以被编译成儿,就可以由JT编译器编译执行。所以不管该组件用VB、C#、Java或 其它语言所写成的,都可以被结合在一起使用;这个结合组件的动作称为组装( Assembly)
CLR 执行引擎。 Intermediate Language 及 Just In Time 编译器 在了解 CLR 所扮演的角色后,我们要介绍 IL(Intermediate Language)以及 JIT(Just In Time) 编译器。旧版的 ASP 是以直译的方式一行一行的执行程序,所以如果网页程序太复杂或是浏览 人数变多,或是服务器负载变重,其执行的效率可想而知。ASP.NET 为了改善执行的效率,以 及让程序将来可跨平台执行,所以便设计了 IL 以及 JIT 编译器。IL 这种架构非常接近机器码, 可以非常有效率的透过 JIT 编译器转换为机器码;而透过 JIT 编译器所编译出来的机器码还是被 CLR 所管理。IL 含有许多广泛的指令,不但包括对象的加载、排序、初始、以及方法呼叫的指 令(关于对象、方法等,第三章有详细的讨论),而且还有算数暨逻辑运算、流程控制、直接内 存存取,以及例外处理的指令。不过因为每个 CPU 的架构都不一样,所以 IL 不能够直接执行; 必需透过 JIT 编译器先转换成被 CPU 所认识的指令后才可执行。只要有支持该种 CPU 架构的 JIT 编译器,就可以把 IL 编译成可以在该 CPU 架构上执行的机器码,这意味着 IL 透过各种 JIT 编译器将可以跨平台。而 IL 这种格式又非常接近机器码,直接由这种格式透过 JIT 编译器编译 成机器码的速度又非常的快,所以第一次执行 aspx 网页时需要编译成 IL 效率较差外,尔后只要 aspx 网页没有异动过,就只要从 IL 透过 JIT 编译器编译成机器码就可以执行,效率当然比以前 的 ASP 网页以直译器来执行的效率提升许多。编译成 IL 也有另外一个好处,那就是只要该种程 序语言可以被编译成 IL,就可以由 JIT 编译器编译执行。所以不管该组件用 VB、C#、Java 或 其它语言所写成的,都可以被结合在一起使用;这个结合组件的动作称为组装(Assembly)
组件 Assemblies 组件就是组成NET应用程序的任何元素,可能来自于 NET Framework对象类别库中的基础 对象,或是我们自行开发的对象。我们利用这些组件来开发NET应用程序,最后将这些组件进 行组合的动作,使用这些组件将我们的应用程序制作成执行文件(EXE)或是动态连结函式库 (DLL)。 NET共享对象类别库 共用物件類別庫 Web類別(ASP.Net) Net Framework 控制項丶快取丶保密、 Session 以及環境設定等 ASP. Net 資料(AD0.Net) Windows表單 AD0s0L·型別等元件、表單等 共用物件類別庫 XML類別 繪圖類別 XSLT. Path Common Language Runt ime 繪圖、影像 Ser ial izat ion等以及文字等 系統類別 集合丶10丶保密機制、執行緒丶 回應丶訊息丶診斷等 共享对象类别库中所包含的对象类别。 在 NET Framework出现之前,使用 Visual c++的程序设计师使用MFc( Microsoft foundation Classes)对象类别库来写程序,而 sual basic的程序设计师则使用ⅤBF(vsua| Basic Framework)。现在 NET Framework将这些对象库整合并统一,设计了一个让所有程序语言 共享的对象类别库。这样一来程序设计师不需要再学习多种对象模型或是对象类别库,就可以做 到跨语言的对象继承、错误处理以及除错。因为不管是ⅤBNET或是C#等程序语言所使用的 对象类别库都一样,所以程序设计师就可以自由的选择他们所偏好使用的程序语言。 NET提供了一个让NET所有程序语言使用的共享对象类别库,这个对象类别库提供了几组统 、对象导向、结构化以及可扩充的对象类别库,协助程序设计师快速的开发软件。共享对象类
组件 Assemblies 组件就是组成 .NET 应用程序的任何元素,可能来自于 .NET Framework 对象类别库中的基础 对象,或是我们自行开发的对象。我们利用这些组件来开发 .NET 应用程序,最后将这些组件进 行组合的动作,使用这些组件将我们的应用程序制作成执行文件(EXE)或是动态连结函式库 (DLL)。 .NET 共享对象类别库 共享对象类别库中所包含的对象类别。 在 .NET Framework 出现之前,使用 Visual C++ 的程序设计师使用 MFC(Microsoft Foundation Classes)对象类别库来写程序,而 Visual Basic 的程序设计师则使用 VBF(Visual Basic Framework)。现在 .NET Framework 将这些对象库整合并统一,设计了一个让所有程序语言 共享的对象类别库。这样一来程序设计师不需要再学习多种对象模型或是对象类别库,就可以做 到跨语言的对象继承、错误处理以及除错。因为不管是 VB.NET 或是 C# 等程序语言所使用的 对象类别库都一样,所以程序设计师就可以自由的选择他们所偏好使用的程序语言。 .NET 提供了一个让 .NET 所有程序语言使用的共享对象类别库,这个对象类别库提供了几组统 一、对象导向、结构化以及可扩充的对象类别库,协助程序设计师快速的开发软件。共享对象类