即:。NET = 新平臺 + 標(biāo)準(zhǔn)協(xié)議 + 統(tǒng)一開發(fā)工具 so.bitsCN.com網(wǎng)管資料庫任你搜
。NET作為新一代互聯(lián)軟件和服務(wù)戰(zhàn)略,將使微軟現(xiàn)有的軟件在網(wǎng)絡(luò)時代不僅適用于傳統(tǒng)的個人計(jì)算機(jī),而且能夠滿足呈現(xiàn)強(qiáng)勁增長的新設(shè)備的需要。到底什么是。NET呢?微軟總裁兼首席執(zhí)行官Steve Ballmer把它定義為:。NET代表一個集合,一個環(huán)境,一個可以作為平臺支持下一代Internet的可編程結(jié)構(gòu)。 bbs.bitsCN.com國內(nèi)最早的網(wǎng)管論壇
。NET的最終目的就是讓用戶在任何地方、任何時間,以及利用任何設(shè)備都能訪問所需的信息、文件和程序。用戶不需要知道這些文件放在什么地方,只需要發(fā)出請求,然后只管接收就可以了。而所有后臺的復(fù)雜性是完全屏蔽起來的。
為了實(shí)現(xiàn)這些功能,。NET 結(jié)構(gòu)發(fā)表以后,微軟便逐步調(diào)整其服務(wù)器軟件的產(chǎn)品線,將原有的Server一一的升級更新,推出了許多新的Server,并將這些Server整合于。NET Enterprise Servers產(chǎn)品線中。
Windows 2000 Server(包含Advanced Server和Datacenter Server)。。NET結(jié)構(gòu)中,最重要的革新就屬于Web Services.Web Services構(gòu)架在Web Server上,能夠通過SOAP與用戶端聯(lián)系,并幫助用戶端完成其提供的服務(wù)。在。NET Framework中,Web Services就是架構(gòu)在Windows 2000 Servers中的IIS5.0上的。
Exchange 2000 Server.Exchange 不是單純的Email Server,它更是一套不折不扣的組信息平臺。 feedom.net關(guān)注網(wǎng)管是我們的使命
SQL Server 2000.SQL Server 提供完善數(shù)據(jù)處理功能。包含數(shù)據(jù)挖掘,XML的直接Internet支持。目前在Windows CE中推出了SQL Server 2000 Windows CE Edition.
Mobile Information Server 為移動解決方案提供可靠而且具有伸縮性的平臺。 bitsCN
.NET Framework 是支持生成和運(yùn)行下一代應(yīng)用程序和 XML Web services 的內(nèi)部 Windows 組件。.NET Framework 旨在實(shí)現(xiàn)下列目標(biāo):
提供一個一致的面向?qū)ο蟮木幊汰h(huán)境,而無論對象代碼是在本地存儲和執(zhí)行,還是在本地執(zhí)行但在 Internet 上分布,或者是在遠(yuǎn)程執(zhí)行的。
提供一個將軟件部署和版本控制沖突最小化的代碼執(zhí)行環(huán)境。
提供一個可提高代碼(包括由未知的或不完全受信任的第三方創(chuàng)建的代碼)執(zhí)行安全性的代碼執(zhí)行環(huán)境。
提供一個可消除腳本環(huán)境或解釋環(huán)境的性能問題的代碼執(zhí)行環(huán)境。
使開發(fā)人員的經(jīng)驗(yàn)在面對類型大不相同的應(yīng)用程序(如基于 Windows 的應(yīng)用程序和基于 Web 的應(yīng)用程序)時保持一致。
按照工業(yè)標(biāo)準(zhǔn)生成所有通信,以確?;?.NET Framework 的代碼可與任何其他代碼集成。
.NET Framework 具有兩個主要組件:公共語言運(yùn)行庫和 .NET Framework 類庫。公共語言運(yùn)行庫是 .NET Framework 的基礎(chǔ)。您可以將運(yùn)行庫看作一個在執(zhí)行時管理代碼的代理,它提供內(nèi)存管理、線程管理和遠(yuǎn)程處理等核心服務(wù),并且還強(qiáng)制實(shí)施嚴(yán)格的類型安全以及可提高安全性和可靠性的其他形式的代碼準(zhǔn)確性。事實(shí)上,代碼管理的概念是運(yùn)行庫的基本原則。以運(yùn)行庫為目標(biāo)的代碼稱為托管代碼,而不以運(yùn)行庫為目標(biāo)的代碼稱為非托管代碼。.NET Framework 的另一個主要組件是類庫,它是一個綜合性的面向?qū)ο蟮目芍赜妙愋图?,您可以使用它開發(fā)多種應(yīng)用程序,這些應(yīng)用程序包括傳統(tǒng)的命令行或圖形用戶界面 (GUI) 應(yīng)用程序,也包括基于 ASP.NET 所提供的最新創(chuàng)新的應(yīng)用程序(如 Web 窗體和 XML Web services)。
.NET Framework 可由非托管組件承載,這些組件將公共語言運(yùn)行庫加載到它們的進(jìn)程中并啟動托管代碼的執(zhí)行,從而創(chuàng)建一個可以同時利用托管和非托管功能的軟件環(huán)境。.NET Framework 不但提供若干個運(yùn)行庫宿主,而且還支持第三方運(yùn)行庫宿主的開發(fā)。
例如,ASP.NET 承載運(yùn)行庫以為托管代碼提供可伸縮的服務(wù)器端環(huán)境。ASP.NET 直接使用運(yùn)行庫以啟用 ASP.NET 應(yīng)用程序和 XML Web services(本主題稍后將對這兩者進(jìn)行討論)。
Internet Explorer 是承載運(yùn)行庫(以 MIME 類型擴(kuò)展的形式)的非托管應(yīng)用程序的一個示例。使用 Internet Explorer 承載運(yùn)行庫使您能夠在 HTML 文檔中嵌入托管組件或 Windows 窗體控件。以這種方式承載運(yùn)行庫使得托管移動代碼(類似于 Microsoft? ActiveX? 控件)成為可能,不過它需要只有托管代碼才能提供的重大改進(jìn)(如不完全受信任的執(zhí)行和獨(dú)立的文件存儲)?!?
下面的插圖顯示公共語言運(yùn)行庫和類庫與應(yīng)用程序之間以及與整個系統(tǒng)之間的關(guān)系。該插圖還顯示托管代碼如何在更大的結(jié)構(gòu)內(nèi)運(yùn)行
.NET Framework 環(huán)境
下面的章節(jié)將更加詳細(xì)地描述 .NET Framework 的主要組件和功能。
bitsCN全力打造網(wǎng)管學(xué)習(xí)平臺
公共語言運(yùn)行庫的功能
公共語言運(yùn)行庫管理內(nèi)存、線程執(zhí)行、代碼執(zhí)行、代碼安全驗(yàn)證、編譯以及其他系統(tǒng)服務(wù)。這些功能是在公共語言運(yùn)行庫上運(yùn)行的托管代碼所固有的。
至于安全性,取決于包括托管組件的來源(如 Internet、企業(yè)網(wǎng)絡(luò)或本地計(jì)算機(jī))在內(nèi)的一些因素,托管組件被賦予不同程度的信任。這意味著即使用在同一活動應(yīng)用程序中,托管組件既可能能夠執(zhí)行文件訪問操作、注冊表訪問操作或其他須小心使用的功能,也可能不能夠執(zhí)行這些功能?! ?
運(yùn)行庫強(qiáng)制實(shí)施代碼訪問安全。例如,用戶可以相信嵌入在 Web 頁中的可執(zhí)行文件能夠在屏幕上播放動畫或唱歌,但不能訪問他們的個人數(shù)據(jù)、文件系統(tǒng)或網(wǎng)絡(luò)。這樣,運(yùn)行庫的安全性功能就使通過 Internet 部署的合法軟件能夠具有特別豐富的功能?!?
運(yùn)行庫還通過實(shí)現(xiàn)稱為通用類型系統(tǒng) (CTS) 的嚴(yán)格類型驗(yàn)證和代碼驗(yàn)證基礎(chǔ)結(jié)構(gòu)來加強(qiáng)代碼可靠性。CTS 確保所有托管代碼都是可以自我描述的。各種 Microsoft 和第三方語言編譯器生成符合 CTS 的托管代碼。這意味著托管代碼可在嚴(yán)格實(shí)施類型保真和類型安全的同時使用其他托管類型和實(shí)例。
此外,運(yùn)行庫的托管環(huán)境還消除了許多常見的軟件問題。例如,運(yùn)行庫自動處理對象布局并管理對對象的引用,在不再使用它們時將它們釋放。這種自動內(nèi)存管理解決了兩個最常見的應(yīng)用程序錯誤:內(nèi)存泄漏和無效內(nèi)存引用。
運(yùn)行庫還提高了開發(fā)人員的工作效率。例如,程序員可以用他們選擇的開發(fā)語言編寫應(yīng)用程序,卻仍能充分利用其他開發(fā)人員用其他語言編寫的運(yùn)行庫、類庫和組件。任何選擇以運(yùn)行庫為目標(biāo)的編譯器供應(yīng)商都可以這樣做。以 .NET Framework 為目標(biāo)的語言編譯器使得用該語言編寫的現(xiàn)有代碼可以使用 .NET Framework 的功能,這大大減輕了現(xiàn)有應(yīng)用程序的遷移過程的工作負(fù)擔(dān)。
盡管運(yùn)行庫是為未來的軟件設(shè)計(jì)的,但是它也支持現(xiàn)在和以前的軟件。托管和非托管代碼之間的互操作性使開發(fā)人員能夠繼續(xù)使用所需的 COM 組件和 DLL。
運(yùn)行庫旨在增強(qiáng)性能。盡管公共語言運(yùn)行庫提供許多標(biāo)準(zhǔn)運(yùn)行庫服務(wù),但是它從不解釋托管代碼。一種稱為實(shí)時 (JIT) 編譯的功能使所有托管代碼能夠以它在其上執(zhí)行的系統(tǒng)的本機(jī)語言運(yùn)行。同時,內(nèi)存管理器排除了出現(xiàn)零碎內(nèi)存的可能性,并增大了內(nèi)存引用區(qū)域以進(jìn)一步提高性能。
最后,運(yùn)行庫可由高性能的服務(wù)器端應(yīng)用程序(如 Microsoft? SQL Server? 和 Internet 信息服務(wù) (IIS))承載。此基礎(chǔ)結(jié)構(gòu)使您在享受支持運(yùn)行庫宿主的行業(yè)最佳企業(yè)服務(wù)器的優(yōu)越性能的同時,能夠使用托管代碼編寫業(yè)務(wù)邏輯。
.NET Framework 類庫
.NET Framework 類庫是一個與公共語言運(yùn)行庫緊密集成的可重用的類型集合。該類庫是面向?qū)ο蟮模⑻峁┠约旱耐泄艽a可從中導(dǎo)出功能的類型。這不但使 .NET Framework 類型易于使用,而且還減少了學(xué)習(xí) .NET Framework 的新功能所需要的時間。此外,第三方組件可與 .NET Framework 中的類無縫集成?!?
例如,.NET Framework 集合類實(shí)現(xiàn)一組可用于開發(fā)您自己的集合類的接口。您的集合類將與 .NET Framework 中的類無縫地混合。
正如您對面向?qū)ο蟮念悗焖M哪菢樱?NET Framework 類型使您能夠完成一系列常見編程任務(wù)(包括諸如字符串管理、數(shù)據(jù)收集、數(shù)據(jù)庫連接以及文件訪問等任務(wù))。除這些常見任務(wù)之外,類庫還包括支持多種專用開發(fā)方案的類型。例如,可使用 .NET Framework 開發(fā)下列類型的應(yīng)用程序和服務(wù):
控制臺應(yīng)用程序。
Windows GUI 應(yīng)用程序(Windows 窗體)。
ASP.NET 應(yīng)用程序。
XML Web services。
Windows 服務(wù)。
例如,Windows 窗體類是一組綜合性的可重用的類型,它們大大簡化了 Windows GUI 的開發(fā)。如果要編寫 ASP.NET Web 窗體應(yīng)用程序,可使用 Web 窗體類?! ?
客戶端應(yīng)用程序開發(fā)
客戶端應(yīng)用程序在基于 Windows 的編程中最接近于傳統(tǒng)風(fēng)格的應(yīng)用程序。這些是在桌面上顯示窗口或窗體從而使用戶能夠執(zhí)行任務(wù)的應(yīng)用程序類型??蛻舳藨?yīng)用程序包括諸如字處理程序和電子表格等應(yīng)用程序,還包括自定義的業(yè)務(wù)應(yīng)用程序(如數(shù)據(jù)輸入工具、報告工具等等)??蛻舳藨?yīng)用程序通常使用窗口、菜單、按鈕和其他 GUI 元素,并且它們可能訪問本地資源(如文件系統(tǒng))和外圍設(shè)備(如打印機(jī))。
另一種客戶端應(yīng)用程序是作為 Web 頁通過 Internet 部署的傳統(tǒng) ActiveX 控件(現(xiàn)在被托管 Windows 窗體控件所替代)。此應(yīng)用程序非常類似于其他客戶端應(yīng)用程序:它在本機(jī)執(zhí)行,可以訪問本地資源,并包含圖形元素。
過去,開發(fā)人員將 C/C++ 與 Microsoft 基礎(chǔ)類 (MFC) 或應(yīng)用程序快速開發(fā) (RAD) 環(huán)境(如 Microsoft? Visual Basic?)一起使用來創(chuàng)建這樣的應(yīng)用程序。.NET Framework 將這些現(xiàn)有產(chǎn)品的特點(diǎn)合并到了單個且一致的開發(fā)環(huán)境中,該環(huán)境大大簡化了客戶端應(yīng)用程序的開發(fā)。
包含在 .NET Framework 中的 Windows 窗體類旨在用于 GUI 開發(fā)。您可以輕松創(chuàng)建具有適應(yīng)多變的商業(yè)需求所需的靈活性的命令窗口、按鈕、菜單、工具欄和其他屏幕元素。
例如,.NET Framework 提供簡單的屬性以調(diào)整與窗體相關(guān)聯(lián)的可視屬性。某些情況下,基礎(chǔ)操作系統(tǒng)不支持直接更改這些屬性,而在這些情況下,.NET Framework 將自動重新創(chuàng)建窗體。這是 .NET Framework 集成開發(fā)人員接口從而使編碼更簡單更一致的許多方法之一?!?
和 ActiveX 控件不同,Windows 窗體控件具有對用戶計(jì)算機(jī)的不完全受信任的訪問權(quán)限。這意味著二進(jìn)制代碼或在本機(jī)執(zhí)行的代碼可訪問用戶系統(tǒng)上的某些資源,例如 GUI 元素和訪問受限制的文件,但這些代碼不能訪問或危害其他資源。由于具有代碼訪問安全性,許多曾經(jīng)需要安裝在用戶系統(tǒng)上的應(yīng)用程序現(xiàn)在可以通過 Web 部署。您的應(yīng)用程序可以在像 Web 頁那樣部署時實(shí)現(xiàn)本地應(yīng)用程序的功能?! ?
服務(wù)器應(yīng)用程序開發(fā)
在托管領(lǐng)域中,服務(wù)器端應(yīng)用程序是通過運(yùn)行庫宿主實(shí)現(xiàn)的。非托管應(yīng)用程序承載公共語言運(yùn)行庫,后者使您的自定義托管代碼可以控制服務(wù)器的行為。此模型在獲得主服務(wù)器的性能和可伸縮性的同時提供給您公共語言運(yùn)行庫和類庫的所有功能。
下面的插圖顯示在不同服務(wù)器環(huán)境中運(yùn)行托管代碼的基本網(wǎng)絡(luò)架構(gòu)。在應(yīng)用程序邏輯通過托管代碼執(zhí)行時,服務(wù)器(如 IIS 和 SQL Server)可執(zhí)行標(biāo)準(zhǔn)操作。 需要什么來搜一搜吧so.bitsCN.com
服務(wù)器端托管代碼
ASP.NET 是使開發(fā)人員能夠使用 .NET Framework 開發(fā)基于 Web 的應(yīng)用程序的宿主環(huán)境。
文章出處:飛諾網(wǎng)(
www.firnow.com):http://dev.firnow.com/course/3_program/cshapo/csharpjs/20100113/189490.html