青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

posts - 34,  comments - 5,  trackbacks - 0
原文:http://www.microsoft.com/china/net/developer/framework_com.asp

背景和歷史

可復(fù)用軟件不是一個(gè)新概念。八年來,人們一直在使用各種形式的組件對象模型(COM)。事實(shí)證明,它是最為成功的可復(fù)用軟件模型。COM引進(jìn)了“組件”的概念——它是可復(fù)用的代碼塊,可以將多個(gè)獨(dú)立函數(shù)的功能進(jìn)行組合,從而擴(kuò)充成諸如Microsoft Word這樣的應(yīng)用程序。

大多數(shù)開發(fā)人員使用OLE時(shí)深刻體驗(yàn)了COM功能。OLE是基于COM形成的一組功能,使得用戶能將一種文檔嵌入到另一種文檔中。這個(gè)功能本身似乎不太引人入勝,但它的作用卻不同凡響:當(dāng)用戶將一個(gè)Excel文檔粘貼到Word文檔中后,單擊嵌入的Excel文檔時(shí),OLE將會把Word的工具欄和菜單轉(zhuǎn)換成Excel的工具欄和菜單。

從開發(fā)人員的角度看,COM通過引進(jìn)幾個(gè)明確定義的接口(諸如iUnknown)便可提供代碼復(fù)用功能,開發(fā)期工具可通過這些接口來查詢一個(gè)組件的功能,并能把這些功能添加到工具中。這就像Visual Basic®開發(fā)系統(tǒng)工具箱中的控件能夠被拖到某個(gè)窗體中一樣。實(shí)際上,每個(gè)控件都代表上百行甚至上千行的代碼,可以容易地封裝在“黑匣子”中,開發(fā)人員只需直接調(diào)用其功能即可。

開發(fā)人員在使用COM時(shí)感到不便的一個(gè)問題是,他們必須編寫附加代碼來將業(yè)務(wù)邏輯程序轉(zhuǎn)換成可復(fù)用的組件,同時(shí)還必須實(shí)現(xiàn)許多接口才能進(jìn)行這種轉(zhuǎn)換。最重要的是,COM要求開發(fā)人員必須手動(dòng)處理復(fù)雜問題,比如:清空不再使用的組件曾占用的內(nèi)存、計(jì)算組件的使用次數(shù)、建立或撤消線程和進(jìn)程以及處理版本控制問題等。

有人可能認(rèn)為,讓開發(fā)人員親自執(zhí)行這類工作的主意非常好,但這也有幾個(gè)弊端。首先,要開發(fā)人員一一執(zhí)行上述所有工作非常困難,往往容易出錯(cuò):導(dǎo)致應(yīng)用程序錯(cuò)誤、系統(tǒng)崩潰以及可怕的“DLL Hell”。另外,嚴(yán)格地寫出所有這種附加代碼,會降低開發(fā)人員的工作效率,導(dǎo)致延期上市。

這對使用Visual C++®開發(fā)系統(tǒng)的開發(fā)人員來說,尤其如此。而對使用Visual Basic的開發(fā)人員來說,這種情況不是很嚴(yán)重。Visual Basic抽象并簡化了COM的許多概念,是全世界最具生產(chǎn)力、最流行的開發(fā)環(huán)境,但它的局限性在于:為了實(shí)現(xiàn)這種高生產(chǎn)力而不得不向開發(fā)人員屏蔽了COM的一些功能。

微軟在2000年的專業(yè)開發(fā)人員大會(PDC)上引進(jìn)的.NET框架,能自動(dòng)在軟件編寫過程中進(jìn)行“智能拼接”,使得開發(fā)人員可以集中精力編寫業(yè)務(wù)邏輯,而不必編寫COM基本結(jié)構(gòu)。

什么是.NET框架?

.NET框架是一個(gè)多語言組件開發(fā)和執(zhí)行環(huán)境,它由以下三個(gè)主要部分組成:

  • 公共語言運(yùn)行時(shí)。此名稱不能準(zhǔn)確反映它的全部功能。實(shí)際上,公共語言運(yùn)行時(shí)在組件的開發(fā)及運(yùn)行過程中,都扮演著非常重要的角色。在組件運(yùn)行過程中,運(yùn)行時(shí)負(fù)責(zé)管理內(nèi)存分配、啟動(dòng)或刪除線程和進(jìn)程、實(shí)施安全性策略、同時(shí)滿足當(dāng)前組件對其它組件的需求。在開發(fā)階段,運(yùn)行時(shí)的作用有些變化:與現(xiàn)今的COM相比,運(yùn)行時(shí)的自動(dòng)化程度大為提高(比如可自動(dòng)執(zhí)行內(nèi)存管理),因而開發(fā)人員的工作變得非常輕松。尤其是,映射功能將銳減開發(fā)人員將業(yè)務(wù)邏輯程序轉(zhuǎn)化成可復(fù)用組件的代碼編寫量。對編程語言而言,運(yùn)行時(shí)這個(gè)概念并不新奇:實(shí)際上每種編程語言都有自己的運(yùn)行時(shí)。Visual Basic開發(fā)系統(tǒng)具有最為明顯的運(yùn)行時(shí)(名為VBRUN),Visual C++®跟Visual FoxPro®、Jscript®、SmallTalk、Perl、Python和Java一樣有一個(gè)運(yùn)行時(shí),即MSVCRT。.NET框架的關(guān)鍵作用在于,它提供了一個(gè)跨編程語言的統(tǒng)一編程環(huán)境,這也是它能獨(dú)樹一幟的根本原因。

  • 統(tǒng)一的編程類。.NET框架為開發(fā)人員提供了一個(gè)統(tǒng)一、面向?qū)ο蟆哟位⒖蓴U(kuò)展的類庫集(API)。現(xiàn)今,C++開發(fā)人員使用的是Microsoft基類庫,Java開發(fā)人員使用的是Windows®基類庫,而Visual Basic用戶使用的又是Visual Basic API集。只是簡單地一用,.NET框架就統(tǒng)一了微軟當(dāng)前的各種不同類框架。這樣,開發(fā)人員無需學(xué)習(xí)多種框架就能順利編程。遠(yuǎn)不止于此的是,通過創(chuàng)建跨編程語言的公共API集,.NET框架可實(shí)現(xiàn)跨語言繼承性、錯(cuò)誤處理功能和調(diào)試功能。實(shí)際上,從JScript到C++的所有編程語言,都是相互等同的,開發(fā)人員可以自由選擇理想的編程語言。

  • 活動(dòng)服務(wù)器頁面(ASP+)。ASP+是使用.NET框架提供的編程類庫構(gòu)建而成的,它提供了Web應(yīng)用程序模型,該模型由一組控件和一個(gè)基本結(jié)構(gòu)組成。有了它,Web應(yīng)用程序的構(gòu)建變得非常容易。開發(fā)人員可以直接使用ASP+控件集,該控件集封裝了公共的、用于超文本標(biāo)識語言(HTML)用戶界面的各種小器件(諸如文本框、下拉菜單等等)。實(shí)際上,這些控件運(yùn)行在Web服務(wù)器上,它們將用戶界面轉(zhuǎn)換成HTML格式后再發(fā)送給瀏覽器。在服務(wù)器上,控件負(fù)責(zé)將面向?qū)ο蟮木幊棠P吞峁┙oWeb開發(fā)人員,這種編程模型能提供面向?qū)ο缶幊碳夹g(shù)的豐富功能。ASP+還提供一些基本結(jié)構(gòu)服務(wù)(諸如會話狀態(tài)管理和進(jìn)程重啟服務(wù)),這些服務(wù)大大減少了開發(fā)人員要編寫的代碼量,并使應(yīng)用程序的可靠性得到大幅度提高。ASP+還允許開發(fā)人員將軟件作為一項(xiàng)服務(wù)來提供。通過使用ASP+ Web服務(wù)功能,ASP+開發(fā)人員只需進(jìn)行簡單的業(yè)務(wù)邏輯編程,而由ASP+基本結(jié)構(gòu)負(fù)責(zé)通過簡單對象訪問協(xié)議(SOAP)來提供服務(wù)。

COM的關(guān)系

.NET框架的一個(gè)主要目的是使COM開發(fā)變得更加容易。COM開發(fā)過程中最難的一件事是處理COM基本結(jié)構(gòu)。因此,為了簡化COM開發(fā),.NET框架實(shí)際上已自動(dòng)處理了所有在開發(fā)人員看來是與“COM”緊密相關(guān)的任務(wù),包括引用計(jì)算、接口描述以及注冊。

必須認(rèn)識到,這并不意味著.NET框架組件不是COM組件。事實(shí)上,使用Visual Studio 6.0的COM開發(fā)人員可以調(diào)用.NET框架組件,并且在他們看來,后者更像是擁有iUnknown數(shù)據(jù)的COM組件。相反,使用Visual Studio.NET的.NET框架開發(fā)人員則將COM組件視作.NET框架組件。

為了避免引起誤解,這里需對這種關(guān)系加以特別說明:COM開發(fā)人員必須手動(dòng)去做大多數(shù).NET框架開發(fā)人員可以在運(yùn)行時(shí)自動(dòng)執(zhí)行的事情。例如,必須手寫COM組件的安全性模塊,且無法自動(dòng)管理模塊占用的內(nèi)存,而在安裝COM組件時(shí),注冊條目必須放進(jìn)Windows注冊表中。對.NET框架而言,運(yùn)行時(shí)實(shí)現(xiàn)了這些功能的自動(dòng)化。例如,組件本身是自我描述型的,因而無需注冊到Windows注冊表中便能安裝。

COM+的關(guān)系

當(dāng)把COM與Microsoft事務(wù)服務(wù)器(MTS)和分布式COM(DCOM)結(jié)合在一起時(shí),就變成了COM+。COM+提供了一組面向中間層的服務(wù)。特別是COM+提供了進(jìn)程管理功能和數(shù)據(jù)庫與對象連接池處理功能。在將來的版本中,它還將提供一種稱為分區(qū)的功能——專門為應(yīng)用程序服務(wù)提供商設(shè)計(jì)的更強(qiáng)大的進(jìn)程隔離功能。

COM+服務(wù)主要面向中間層應(yīng)用程序開發(fā),并主要為大型分布式應(yīng)用程序提供可靠性和可擴(kuò)展性。這些服務(wù)是對.NET框架所提供服務(wù)的補(bǔ)充;通過.NET框架類,可以直接訪問這些服務(wù)。

posted on 2007-09-10 12:25 披星戴月 閱讀(275) 評論(0)  編輯 收藏 引用 所屬分類: DotNet
<2007年9月>
2627282930311
2345678
9101112131415
16171819202122
23242526272829
30123456

常用鏈接

留言簿(2)

隨筆分類

隨筆檔案

文章檔案

相冊

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲成人资源网| 国产精品99久久久久久白浆小说 | 国产亚洲精品v| 国产日韩欧美精品在线| 老司机午夜精品视频| 亚洲午夜精品一区二区| 99精品99| 午夜视频在线观看一区二区| 午夜国产精品视频| 亚洲一区二区三区影院| 久久精品一区| 久久综合电影一区| 欧美激情一区二区三区在线视频| 久久综合久久久| 欧美精品免费播放| 欧美偷拍一区二区| 国产精品v欧美精品∨日韩| 欧美国产第一页| 国产三级欧美三级| 亚洲毛片在线观看| 开心色5月久久精品| 亚洲国产一区二区三区青草影视| 亚洲一二三四久久| 欧美 日韩 国产一区二区在线视频| 欧美网站在线观看| 99视频精品免费观看| 久久女同互慰一区二区三区| 亚洲小说欧美另类婷婷| 欧美精品一区三区在线观看| 狠狠干成人综合网| 久久精品九九| 亚洲一区二区视频| 国产精品av一区二区| 亚洲精品四区| 亚洲国产乱码最新视频| 免费久久99精品国产| 在线免费观看视频一区| 麻豆av一区二区三区久久| 99国产精品私拍| 国产精品久久久久久影视 | 亚洲欧美综合国产精品一区| 欧美另类亚洲| 午夜精品三级视频福利| 亚洲欧美日韩国产综合| 99精品欧美一区二区三区| 国产精品视频你懂的| 久久精品国产免费| 久久先锋影音av| 亚洲一区二区三| 亚洲欧美中文在线视频| 91久久综合| 一区二区三区日韩在线观看| 国产在线日韩| 亚洲人午夜精品| 国产精品美女xx| 欧美激情一区二区三级高清视频| 免费在线欧美视频| 欧美一区二区三区免费在线看| 久久精品亚洲一区| 在线亚洲欧美| 欧美激情按摩在线| 久久一二三四| 国产一区二区三区在线免费观看 | 欧美一站二站| 欧美黑人一区二区三区| 玖玖玖国产精品| 国产欧美日韩在线播放| 中日韩在线视频| 亚洲三级电影全部在线观看高清| 午夜国产精品视频| 亚洲欧美日韩国产中文| 欧美激情成人在线| 欧美高清日韩| 亚洲免费av片| 亚洲高清毛片| 极品av少妇一区二区| 欧美一区二区在线免费播放| 亚洲午夜电影在线观看| 模特精品裸拍一区| 亚洲日本成人| 午夜精品一区二区三区四区 | 亚洲天堂av高清| 亚洲男同1069视频| 国产一区二区主播在线| 久久久噜噜噜久久人人看| 麻豆成人在线播放| 一区二区三区视频免费在线观看| 欧美日韩国产首页| 欧美一区二区三区视频免费播放| 久久久久欧美| 日韩一二三在线视频播| 欧美色网在线| 久久亚洲精品一区| 亚洲欧美日韩精品久久久| 久久噜噜噜精品国产亚洲综合| 亚洲精品免费一区二区三区| 国产精品一区二区你懂的| 欧美国产第二页| 一区二区三区日韩| 欧美另类综合| 久久久国产精彩视频美女艺术照福利 | 在线视频一区观看| 亚洲综合第一| 另类人畜视频在线| 午夜精品福利在线| 亚洲乱码精品一二三四区日韩在线 | 亚洲精品一级| 欧美1区视频| 欧美国产日韩精品免费观看| 欧美一区二区三区久久精品| 一区二区三区四区五区视频| 99精品久久久| aa级大片欧美三级| 一本一本大道香蕉久在线精品| 亚洲乱码视频| 国产精品99久久久久久宅男 | 亚洲三级影院| 性感少妇一区| 欧美激情视频在线播放| 日韩一级二级三级| 亚洲欧美日韩国产中文| 欧美一区二区三区免费大片| 久久精品成人一区二区三区| 欧美成人免费观看| 国产亚洲一区二区三区在线播放| 伊人久久婷婷色综合98网| 亚洲精品久久久久久一区二区| 亚洲一区国产一区| 亚洲国产另类久久精品| 亚洲免费网址| 国产精品porn| 日韩一区二区精品视频| 美女精品视频一区| 亚洲视频一区二区在线观看 | 亚洲午夜精品一区二区| 久久免费视频网站| 国产乱码精品一区二区三区忘忧草 | 久久国产一区二区| 欧美性猛交xxxx免费看久久久 | 亚洲一区三区在线观看| 亚洲免费精彩视频| 六月婷婷一区| 蜜桃久久av一区| 在线观看国产一区二区| 久久精品人人做人人综合| 久久久久久久综合| 国际精品欧美精品| 久久米奇亚洲| 欧美激情一区二区在线| 亚洲国产精品一区二区第一页| 久久久久亚洲综合| 亚洲成人在线视频播放| 亚洲国产一区二区三区高清| 久久一区视频| 亚洲精品免费一二三区| 亚洲欧美成人| 红桃视频欧美| 欧美激情一区二区三区在线视频 | 欧美日韩综合精品| 中文在线资源观看网站视频免费不卡 | 午夜精品一区二区三区在线播放| 午夜免费在线观看精品视频| 国产乱码精品一区二区三| 久久成人国产| 亚洲欧洲三级电影| 午夜精品久久久久久99热软件| 国产日韩高清一区二区三区在线| 久久久免费精品| 日韩视频在线观看一区二区| 午夜欧美不卡精品aaaaa| 一区在线影院| 欧美视频在线播放| 久久久久久一区| 一级成人国产| 欧美成人一区在线| 欧美亚洲专区| 亚洲另类一区二区| 国产一区二区日韩| 欧美日韩一区三区四区| 久久久久国产精品一区三寸| 一个色综合av| 亚洲激情电影在线| 久久人人超碰| 亚洲欧美偷拍卡通变态| 亚洲精品乱码久久久久久按摩观 | 欧美久久一级| 久久精品女人| 欧美亚洲网站| 亚洲少妇诱惑| 在线不卡欧美| 国产精品久久久久久久久久免费 | 亚洲一区二区精品| 亚洲国产二区| 狠狠爱成人网| 国产丝袜美腿一区二区三区| 欧美日韩国产精品| 欧美国产日韩一区二区三区| 欧美在线高清视频| 亚洲欧美日韩成人高清在线一区| 亚洲日韩中文字幕在线播放|