【文章內(nèi)容簡(jiǎn)介】
.NET等 (VBScript已不再使用 )。預(yù)計(jì)還將有 20多種語(yǔ)言可以運(yùn)行在 .NET框架中。目前,有些公司還在創(chuàng)建符合 CLS規(guī)范的自己的語(yǔ)言。 ? JavaScript是各類(lèi)瀏覽器采用的通用語(yǔ)言。傳統(tǒng)的 JavaScript是一種基于面向?qū)ο蟮哪_本語(yǔ)言,現(xiàn)在 Jscript .NET與 JavaScript語(yǔ)言完全兼容,但卻已將它改造成為一種完全面向?qū)ο蟮恼Z(yǔ)言,不僅給語(yǔ)言增添了很多新功能,還得到 .NET框架的完全支持。 ? 由于多種語(yǔ)言都運(yùn)行在 .NET框架之中,因此它們功能都基本相同,只是語(yǔ)法有區(qū)別。程序開(kāi)發(fā)者可以選擇自己習(xí)慣或愛(ài)好的語(yǔ)言進(jìn)行開(kāi)發(fā)。 VB .NET和 VC .NET與原來(lái)的 VB、VC相比已經(jīng)有很多地方不兼容。 VB .NET和 VB相比變化更大, VB .NET是一種完全面向?qū)ο蟮恼Z(yǔ)言 (而 VB只是基于面向?qū)ο蟮恼Z(yǔ)言 )。 Visual J 是 .NET框架 加進(jìn)來(lái)的語(yǔ)言,供原來(lái)使用 Java語(yǔ)言的程序員轉(zhuǎn)向使用 .NET框架的應(yīng)用程序時(shí)使用。 ? Visual C是為 .NET框架“量體裁衣”開(kāi)發(fā)出來(lái)的語(yǔ)言,非常簡(jiǎn)練和安全,最適合于在 .NET框架中使用。本書(shū)的示例都是用 C編寫(xiě)的。 C的簡(jiǎn)要語(yǔ)法請(qǐng)參閱本書(shū)的附錄 A。 .NET框架的體系結(jié)構(gòu) 程序設(shè)計(jì)語(yǔ)言 (V B C + + C J …… ) 公共語(yǔ)言規(guī)范 (Com m o n L a n g u a g e S p e c if ic a ti o n ) A S P .NET W in d o w s W e b 服務(wù) 窗體 A D O .NET 與 X ML .NET 類(lèi)庫(kù) (Ba s e Cla s s L ib ra ry ) 公共語(yǔ)言運(yùn)行庫(kù) (環(huán)境 ) (Com m o n L a n g u a g e Ru n ti m e ) 程序開(kāi)發(fā)環(huán)境 ( Visual Studio .NET ) 圖 .NET框架的體系結(jié)構(gòu) .NET框架的體系結(jié)構(gòu) 公共語(yǔ)言運(yùn)行庫(kù) CL R 語(yǔ)言與開(kāi)發(fā)工具 類(lèi)庫(kù) 圖 框架的簡(jiǎn)化圖 .NET框架的體系結(jié)構(gòu) .NET框架的體系結(jié)構(gòu) .NET框架的體系結(jié)構(gòu) ? 2. 類(lèi)庫(kù) ? .NET框架的另一個(gè)主要組成部分是類(lèi)庫(kù),包括數(shù)千個(gè)可重用的“類(lèi)”。各種不同的開(kāi)發(fā)語(yǔ)言都可以用它來(lái)開(kāi)發(fā)傳統(tǒng)的命令行程序或者圖形用戶界面 (GUI)應(yīng)用程序。 ? .NET框架中的類(lèi)被拆分為命名空間。命名空間 (NameSpace)是類(lèi)庫(kù)的邏輯分區(qū)。類(lèi)庫(kù)所采用的命名空間呈層次結(jié)構(gòu),即命名空間下面又可以再分成子命名空間。每個(gè)命名空間都包含一組按照功能劃分的相關(guān)的類(lèi)。這樣,一個(gè)大型的 .NET庫(kù)就變得易于理解和便于使用。 ? 例如: ? 所有微軟公司提供的類(lèi)都以 System 或 Microsoft 命名空間開(kāi)頭。 ? 有關(guān)網(wǎng)絡(luò)協(xié)議和簡(jiǎn)單的編程接口的類(lèi)放在 。 ? 有關(guān)文件 I/O、內(nèi)存 I/O、獨(dú)立存儲(chǔ)的類(lèi)放在 。 ? 基于 Windows應(yīng)用程序的用戶界面的類(lèi)放在 間中。 ? 有關(guān) Web服務(wù)器與瀏覽器交互,以及 Web服務(wù)的類(lèi)都放入 。 ? 所有用于處理 XML、 XML架構(gòu)、 XSL/T轉(zhuǎn)換、 Xpath表達(dá)式的類(lèi)都放入 。 ? 3. 公共語(yǔ)言運(yùn)行庫(kù) (CLR) ? 公共語(yǔ)言運(yùn)行庫(kù) (CLR,也稱(chēng)公共語(yǔ)言運(yùn)行環(huán)境 )就相當(dāng)于 Java體系中的“虛擬機(jī)”,它是 .NET 框架的核心。它提供了程序運(yùn)行時(shí)的內(nèi)存管理、垃圾自動(dòng)回收、線程管理和遠(yuǎn)程處理以及其他系統(tǒng)服務(wù)。同時(shí),它還能監(jiān)視程序的運(yùn)行,進(jìn)行嚴(yán)格的安全檢查和維護(hù)工作,以確保程序運(yùn)行的安全、可靠以及其他形式的代碼的準(zhǔn)確性。 ? 在 , CLR又增加了用戶認(rèn)證、角色授權(quán)以及個(gè)性化服務(wù)等新的服務(wù)項(xiàng)目。 ? 運(yùn)行庫(kù)不僅提供了多種軟件服務(wù),同時(shí)也為以往的軟件提供了支持。托管和非托管代碼之間的互操作性使開(kāi)發(fā)人員能夠繼續(xù)使用原來(lái)開(kāi)發(fā)的 COM 、 ActiveX控件和 DLL動(dòng)態(tài)鏈接庫(kù)等。 XML:可擴(kuò)展標(biāo)記語(yǔ)言 ? 什么是 XML ? 使用 XML的特點(diǎn) XML:可擴(kuò)展標(biāo)記語(yǔ)言 ? 當(dāng)前,如何解決跨平臺(tái)交換數(shù)據(jù)的問(wèn)題,已經(jīng)成為Inter進(jìn)一步發(fā)展的“瓶頸”。為了解決這一問(wèn)題,各個(gè)公司都曾經(jīng)花費(fèi)了大量的人力和物力。例如微軟公司開(kāi)發(fā)的 DCOM, SUN公司開(kāi)發(fā)的CORBA等,但都沒(méi)能完全解決問(wèn)題?,F(xiàn)在 XML的出現(xiàn)為解決這類(lèi)問(wèn)題提供了最好的機(jī)會(huì)。 什么是 XML ? XML(Extensible Markup Language)是一種可以擴(kuò)展的標(biāo)記語(yǔ)言,用來(lái)描述層次化的文檔。 XML是由 World Wide Web(W3C)1998年發(fā)布的標(biāo)準(zhǔn),到現(xiàn)在已經(jīng)發(fā)展成熟。下面先舉一個(gè)簡(jiǎn)單的示例來(lái)說(shuō)明什么是 XML。 ? 一個(gè)簡(jiǎn)單的 XML文檔的結(jié)構(gòu)如下: ? root ? a ? b…/b ? c…/c ? d…/d ? /a ? a ? b…/b ? c…/c ? d…/d ? /a ?