.net 框架程序設(shè)計(jì) 讀書筆記(一)---.net 平臺(tái)構(gòu)成
發(fā)表時(shí)間:2023-07-29 來(lái)源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要].net 平臺(tái)構(gòu)成1 底層操操作系統(tǒng) windows由于Web服務(wù)和使用Web服務(wù)的應(yīng)用程序仍然運(yùn)行在計(jì)算機(jī)上,而且既然是計(jì)算機(jī)都 要有外設(shè),所以我們?nèi)匀恍枰粋(gè)操作系統(tǒng).. Windows添加了X...
.net 平臺(tái)構(gòu)成
1 底層操操作系統(tǒng) windows
由于Web服務(wù)和使用Web服務(wù)的應(yīng)用程序仍然運(yùn)行在計(jì)算機(jī)上,而且既然是計(jì)算機(jī)都 要有外設(shè),所以我們?nèi)匀恍枰粋(gè)操作系統(tǒng).. Windows添加了Xml支持.. Windows XP和Windows.net (現(xiàn)在改名為windows Server 2003 ) 所有版本都都 為服務(wù)驅(qū)動(dòng)的世界提供最好的支持.
特別地windowsXp和Windows 2003 Server 集成了Microsoft .net Passport Xml Web服務(wù)支持.Passport是一種用戶認(rèn)證服務(wù)..當(dāng)?shù)卿浭褂肞assport認(rèn)證的Web站點(diǎn)和Web服務(wù)時(shí)的效率將會(huì)大提升.換句話說(shuō),用戶在訪問(wèn)不同的互聯(lián)網(wǎng)著站點(diǎn)時(shí),將不再需要每次都輸入用戶名和密碼.
另外Windows XP 和 Windows Server 2003 都提供了對(duì).net框架的內(nèi)置支持.
2 輔助產(chǎn)品:.net 企業(yè)服務(wù)器
這些產(chǎn)品主要是為企業(yè)的信息化和信息集成提供幫助的.
Microsoft Application Center
Microsoft BizTalk Server 2000 (現(xiàn)在出了個(gè)新版本)
Microsoft Commerce Server 2000
Microsoft Exchange 2000 郵件服務(wù)器
Microsoft HostIntegration Server 2000
Microsoft Internet Security and Acceleration(ISA) Server 2000
Microsoft Mobile Information Server 2002
Microsoft SQL Server 2000
這個(gè)產(chǎn)品剛開始跟我們的.net平臺(tái)其實(shí)沒(méi)什么關(guān)系.但以后可能為將一些.net特性集成到這些這些產(chǎn)品中, 目前新版的BizTalk 就集成了.net特性,差且通過(guò)vs.net 2003進(jìn)行開發(fā).
3 Microsoft XML Web 服務(wù): .net My Servers
微軟作為一個(gè)Web服務(wù)的底層技術(shù)提供商的同時(shí),也推出了自己的XML Web服務(wù)
.net Alerts
.net ApplicationSettings
.net Calendar
.net Categories
等等……
4開發(fā)平臺(tái):.NET 框架
.net 框架包含兩個(gè)部分: 通用語(yǔ)言運(yùn)行時(shí)(Common Language Runtime---CLR) 和.net 框架類庫(kù)(Framework Class libarary --FCL) .
.net 框架是.net平臺(tái)最關(guān)鍵的部分.
本書討論的就是開發(fā)面向.net 框架的應(yīng)用程序和XML Web服務(wù).
.net 框架開發(fā)平臺(tái)可以允許我們創(chuàng)建各種各樣的應(yīng)用程序:XML Web服務(wù)、Web窗體,Win32 GUI程序,Win32 CUI 應(yīng)用程序, Windows服務(wù)、實(shí)用程序、以及獨(dú)立的組件模塊。
Windows 2003 Server 內(nèi)置了.NET框架
Microsft .net 框架為開發(fā)人員提供的技術(shù)比任何以前的微軟發(fā)平臺(tái)提供的技術(shù)都要多,比如代碼重用、代碼專業(yè)化、資源管理、多語(yǔ)言開發(fā)、安全、部署、管理等。在設(shè)計(jì).net 框架時(shí),微軟還感到有必要改進(jìn)目前Windows平臺(tái)的某些缺陷。
CLR和FCL提供的部分服務(wù):
l 一致的編程模型
現(xiàn)在的Windows操作系統(tǒng),某些功能需要通過(guò)動(dòng)態(tài)鏈接庫(kù)DLL來(lái)訪問(wèn),而某些功能又是通過(guò)COM對(duì)像來(lái)訪問(wèn)。 在.net 框架下,所有的應(yīng)用程序服務(wù)都將以一種一致的、面向?qū)ο竦木幊棠P吞峁┙o開發(fā)人員。
l 簡(jiǎn)化的編程方式
CLR的其中一個(gè)目的就是簡(jiǎn)化Win32和COM 環(huán)境下所需要的各種繁雜的基礎(chǔ)構(gòu)造。在CLR下,我們可以不需要 注冊(cè)表、全局惟一標(biāo)識(shí)符、Iunknown 、AddRef、Release、HRESULT等。
l 可靠的版本機(jī)制
.net 框架采用了一種新型的版本機(jī)制來(lái)隔離應(yīng)用程序組件,可以保證一個(gè)應(yīng)用程序總能加載當(dāng)初生成的測(cè)試時(shí)所使用的組件。 徹底關(guān)上了“DLL hell“的大門。
l 輕便的部署管理
在.net框架下,組件將不再受注冊(cè)表的任何引用。大多數(shù).net框架應(yīng)用程序的安裝工作所需要的只不過(guò)是將文件拷貝到一個(gè)目錄中。然后添加快捷方式都桌面、開始菜單就行了
l 廣泛的平臺(tái)支持
編譯后的.NET框架的源代碼實(shí)際上是通用中間語(yǔ)言(Common Intermediate Language) 只有在運(yùn)行時(shí),CLR才會(huì)將這些中間語(yǔ)言翻譯為CPU指令。這就意味著只要一臺(tái)機(jī)中包含有與ECMA兼容的CLR和FCL,我們便可以將.NET框架應(yīng)用程序部署在該機(jī)上。
l 無(wú)縫的語(yǔ)言集成
CRL要求所有面向它的語(yǔ)言都要遵循一種稱作通用類型系統(tǒng)(Common Type System,簡(jiǎn)稱CTS)的規(guī)范和通用語(yǔ)言規(guī)范
l 簡(jiǎn)便的代碼重用
l 自動(dòng)化的內(nèi)存管理(垃圾收集)
CLR為我們自動(dòng)追蹤資源的使用情況。
l 堅(jiān)實(shí)的類型安全
CLR可以確保所有的代碼都是類型安全的。
l 豐富的調(diào)試支持
CLR完全支持跨語(yǔ)言調(diào)試
l 統(tǒng)一的錯(cuò)誤報(bào)告
CLR中,所有的失敗的調(diào)用是通過(guò)異常來(lái)報(bào)告的。
l 全新的安全策略
傳統(tǒng)的安全機(jī)制都是基于用戶賬號(hào)來(lái)控制的。
CLR中的代碼訪問(wèn)安全為我們提供了以代碼為中心的控制方式。
l 強(qiáng)大的互操作能力
.net框架完全支持COM ,以及傳統(tǒng)DLL中的Win32函數(shù)。
5 集成開發(fā)環(huán)境 Visual Studio .Net
微軟的Visual Stuaio .net 2003是最好的.net 框架應(yīng)用程序開發(fā)工具。
總結(jié):
這一章主要講了.net平臺(tái)的構(gòu)成和.net平臺(tái)的最關(guān)鍵部分---CLR和FCL的特點(diǎn)。
.net框架的13大特點(diǎn):
1. 一致的編程模型
2. 簡(jiǎn)化的編程方式
3. 可靠的版本機(jī)制
4. 輕便的部署管理
5. 廣泛的平臺(tái)支持
6. 無(wú)縫的語(yǔ)言集成
7. 簡(jiǎn)便的代碼重用
8. 自動(dòng)化的內(nèi)存管理(垃圾收集)
9. 堅(jiān)實(shí)的類型安全
10. 豐富的調(diào)試支持
11. 統(tǒng)一的錯(cuò)誤報(bào)告
12. 全新的安全策略
13. 強(qiáng)大的互操作能力
其實(shí)我個(gè)人感覺第5條目前來(lái)說(shuō)還不是很有意義 ,因?yàn)橹连F(xiàn)在為止.net框架只能在windows上很好的使用,聽說(shuō)出了個(gè)mono但目前還不是很成熟吧? 第12條其實(shí)非常重要,基于用戶帳號(hào)的安全機(jī)制對(duì)于互聯(lián)網(wǎng)來(lái)說(shuō)是不太安全的,這直接會(huì)影響到.net的普及程度,也就影響到我的飯碗 :)。
還有就是微軟的那些企業(yè)服務(wù)器我只知道一部分的用途,另一部分壓根不知道是干什么用的。也沒(méi)有時(shí)間主動(dòng)去找相關(guān)資料。前段時(shí)間參加了微軟開發(fā)者日才知道BizTalk是干什么用的。那個(gè)主講人也挺牛。資料上寫的暈暈乎乎的東西,被他講的清晰明了,一聽就懂啊。
技術(shù)或語(yǔ)言特性或者說(shuō)一些集成方案,只有了解它,才會(huì)去主動(dòng)去使用它,但問(wèn)題是,很多情況下不使用它也可以正常工作,只不過(guò)花費(fèi)的時(shí)間和代價(jià)更高。而我在用更高的代價(jià)解決問(wèn)題時(shí),并不知道有一種更好的解決辦法存在,而且就在我身邊。我沒(méi)有太多時(shí)間去研究層出不窮的名詞背后的技術(shù)和特性。
有兩個(gè)辦法解決這個(gè)問(wèn)題: 盡量的去了解各種新的事物,哪怕你剛開始認(rèn)為它跟你的工作和興趣風(fēng)牛馬不相及。另外一個(gè)就是期望那些提供商(比如微軟)在宣傳時(shí)更多的突出 程序員可以用那些產(chǎn)品解決實(shí)際應(yīng)用中的哪些問(wèn)題。(起碼面像程序員的宣傳是這樣的)
直到聽了BizTalk講座,我才知道這個(gè)東西其實(shí)是很適合我們公司。我們可以通過(guò)BizTalk解決很多棘