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

牧光小院

被約束的日日夜夜,停不下來的時間。

面向組件還是面向對象

組件( Component )應該是在現代軟件工程中,除了對象( Object )之外的第二個炙手可熱的詞了。然而,什么是一個組件?是一個某些邏輯集合的實現?還是一個承載這些實現的物理實體(例如 DLL )?還是一個包括了邏輯實現、物理載體以及相關的類型信息、安全策略和版本信息的一個大而全的集合?也許你會說任何一種解釋都是正確的。的確,不同的環境中, Component 有著不同的含義,但是,在 .NET 中,我們就可以把一個 .NET Class 當作一個 Component


既然類和組件有著這么多類似的地方,那么傳統的面向對象編程和面向組件編程有什么區別呢?簡單的說,面向對象關注的是組合在一個二進制可執行文件中的各個類的關系,而面向組件的編程關注的是在彼此獨立的基礎上模塊之間的交互性,這種交互性使得你并不需要熟悉它們內部的工作原理。

分而治之 VS 集大成

這兩種方法最基本的不同在于它們對最終的應用程序的觀點。在傳統的面向對象編程中,盡管你可以精心的把所有的商業邏輯分布在不同的類中,一旦這些類被編譯,它們就被固化成了一個巨大的二進制代碼。所有的類共享同一個物理單元(通常是一個可執行文件)、被操作系統認為是同一個進程,使用同一個地址空間以及共享相同的安全策略等等。如果多個開發者在同一份代碼上進行開發,他們甚至還要共享源文件。在這種情況下,修改一個類可能會讓整個項目被重新鏈接,并重新進行必要的測試,更嚴重的,還有可能要修改其他的類。但是,在面向組件開發中,應用程序是由一系列可以互相交互的二進制模塊組合而成的。

一個具體的二進制組件可能并不能完成什么工作。有些組件是為了提供一些常規服務而編寫的,例如通信的封裝或者文件訪問組件。也有一些是為了某些特定應用而專門開發的。一個應用程序的設計者可以通過把這些不同的組件提供的功能粘合在一起來實現他們需要的商業邏輯。很多面向組件的技術——例如: COM J2EE CORBA .NET 都為二進制組件提供了的無縫鏈接的機制。而唯一的不同就是你需要在組件通信上花費的力氣。

把一個二進制應用程序分解成不同的二進制組件的動機和把不同的類放到不同的文件中是類似的。后者使得不同的類的開發人員可以彼此獨立的工作,盡管即時修改了一個類也要重新鏈接整個應用程序,但是你只需要重新編譯被修改的部分就可以了。

但是,面向組件的開發還是和簡單軟件項目的管理更復雜一些。因為一個面向組件的應用程序是一個二進制代碼塊的集合,你可以把組件當作是 LEGO 的積木塊一樣,隨心所欲的拆裝它們。如果你需要修改一個組件的實現,只需要修改那個組件就可以了,而組件的客戶機不需要重新編譯也不需要重新開發。對于那些不常用到的組件,組件甚至可以在一個程序運行的時候被更新。這些改進和增強使得組件可以立即進行更新,而所有該組件的客戶都將立即受益。無論是在同一臺機器上還是通過網絡遠程訪問。

面向組件的應用程序也更易于擴展。當你需要實現新的需求的時候,你可以提供一個新的組件,而不去影響那些和新需求無關的組件。這些特點使得面向組件的開發降低了大型軟件項目長期維護的成本,這是一個最實際的商業問題,也正是如此,組件技術才如此迅速的被接受。

面向組件的應用程序通常可以更快的響應市場,因為你可以有很大的選擇空間,不僅僅是自己開發的組件,還可以從第三方廠商來購買某些組件,從而避免了重復制造輪子。這里, VB 就是一個很好的例子,豐富的 ActiveX 控件使得很多人在快速開發中得到了享受。

接口還是繼承

面向對象和面向組件另一個重要的不同在于這兩種技術在繼承和重用模型上的側重點不同。

在面向對象的分析和設計中,應用程序通常被分解成復雜的類繼承結構。類的設計和要解決的商業問題緊密結合。你可以從已有基類繼承并特化其行為來實現代碼重用。問題在于,這是一種很糟糕的重用的方法。當你從一個基類派生一個子類的時候,你必須對基類的實現有透徹的理解才可能保證不出問題。例如:修改一個成員變量會不會帶來副作用?這會對基類中的代碼有什么影響?重載基類的方法會不會破壞那些想使用基類版本的客戶的行為?等等。

這種形式的重用被稱為白盒重用(White-box reuse,因為當你重用的時候你就需要去了解基類實現的細節。顯然。白盒重用在可擴展性較高的大型應用中并不經濟,也很難得到第三方Framework廠商的支持。

面向組件的開發采用了黑盒重用(Black-box reuse)的方法,它可以讓你對組件內部全然不知的情況下來使用組件公開的接口。這樣,你就可以遠離那些復雜的繼承關系。而面向組件的開發者也可以把更多的精力放在制定組件和客戶的溝通的接口上了。

最后,面向對象編程提供了有限的工具和設計模式來處理和應用程序運行時相關的問題,例如多線程、并發管理、安全、分布式應用和版本控制等。面向對象的開發者當面對這些“公共需求”的時候,或多或少的需要自己來解決問題。但是面向組件的開發方式卻使你在這方面要靈活的多。

posted on 2005-11-08 16:55 nacci 閱讀(857) 評論(2)  編輯 收藏 引用

評論

# re: 面向組件還是面向對象 2007-01-17 11:18 游俠

寫的很好,不過不過癮。
我的E文很爛,不知道帥哥有沒有興趣多寫一些呢?  回復  更多評論   

# re: 面向組件還是面向對象 2007-09-20 10:10 sand

good job ,thanks  回復  更多評論   


只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


<2005年11月>
303112345
6789101112
13141516171819
20212223242526
27282930123
45678910

導航

統計

常用鏈接

留言簿(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| 久久综合中文| 久久久久久香蕉网| 久久精品国产欧美亚洲人人爽| 亚洲欧美日韩国产成人精品影院| 亚洲精品一品区二品区三品区| 亚洲激情偷拍| 99av国产精品欲麻豆| 一本色道久久综合亚洲二区三区| 洋洋av久久久久久久一区| 亚洲激情婷婷| 亚洲天堂久久| 久久久久国产一区二区三区四区 | 国产一区av在线| 亚洲欧美激情一区| 欧美一区二区三区在线视频| 久久精品国产免费观看| 免费成人av在线| 欧美日本一道本在线视频| 欧美三级中文字幕在线观看| 国产精品一区二区在线观看网站| 激情久久久久久久| 亚洲卡通欧美制服中文| 亚洲综合丁香| 免费视频一区| 一区二区三区久久| 久色成人在线| 亚洲精品影院| 欧美在线一区二区| 欧美日韩国产另类不卡| 国产伊人精品| 亚洲无吗在线| 女同一区二区| 亚洲一区二区三区视频播放| 欧美成人dvd在线视频| 国产伦精品一区二区三区免费迷| 亚洲国产免费看| 久久成人羞羞网站| 日韩一级黄色av| 蜜臀av一级做a爰片久久| 国产精品女主播在线观看| 亚洲日本黄色| 久热国产精品视频| 亚洲女性喷水在线观看一区| 你懂的国产精品永久在线| 亚洲国产欧美一区二区三区丁香婷| 亚洲一区二区三区精品视频| 欧美福利一区二区| 在线成人欧美| 久久精品亚洲精品| 亚洲小少妇裸体bbw| 欧美日韩国产色站一区二区三区| 在线成人免费观看| 久久九九有精品国产23| 亚洲女爱视频在线| 国产精品久久777777毛茸茸| 99天天综合性| 亚洲国产成人午夜在线一区| 久久一区激情| 在线成人亚洲| 免费观看国产成人| 久久久久国产精品www| 国内成人在线| 欧美成人免费在线视频| 猛干欧美女孩| 亚洲精品国精品久久99热一| 欧美激情一区在线观看| 欧美激情精品| 正在播放日韩| 一道本一区二区| 国产精品毛片高清在线完整版| 亚洲一区在线免费观看| 亚洲午夜未删减在线观看| 国产精品私房写真福利视频| 午夜精品久久久久久久久久久| 亚洲欧美一区二区视频| 国产一区二区三区精品久久久| 久久国产视频网| 久久综合电影| 亚洲视频免费| 欧美一区二区在线免费播放| 亚洲第一精品福利| 亚洲精品综合精品自拍| 国产精品久久久久久久久果冻传媒 | 欧美一区影院| 欧美一区二区观看视频| 国产欧美日韩综合一区在线观看 | 玖玖精品视频| 亚洲国产精品综合| 欧美成人小视频| 久久一区二区三区av| 极品av少妇一区二区| 亚洲一二三四区| 久久成人精品视频| 亚洲国产女人aaa毛片在线| 亚洲盗摄视频| 欧美日产在线观看| 亚洲视频在线看| 亚洲小说春色综合另类电影| 国产婷婷色一区二区三区| 在线视频你懂得一区| 亚洲一二三四区| 一区二区三区黄色| 99在线热播精品免费| 国产精品国产三级国产普通话三级 | 亚洲国产91| 欧美亚男人的天堂| 久久精品国产精品亚洲综合| 久久精品国产一区二区三区 | 一区二区久久| 亚洲一区二区黄色| 狠狠操狠狠色综合网| 亚洲高清一二三区| 国产精品人人爽人人做我的可爱 | 国产午夜一区二区三区| 欧美+亚洲+精品+三区| 欧美精品一卡二卡| 欧美一区在线直播| 你懂的视频一区二区| 亚洲欧洲精品一区二区精品久久久 | 欧美一区激情| 日韩亚洲国产欧美| 亚洲日本成人网| 欧美搞黄网站| 亚洲性夜色噜噜噜7777| 亚洲一区不卡| 亚洲人屁股眼子交8| 午夜精品久久久久久久久久久| 亚洲国产精品成人综合色在线婷婷| av不卡在线看| 亚洲黄色影院| 亚洲欧美日韩精品久久久久| 亚洲区免费影片| 女仆av观看一区| 久久久久在线观看| 国产精品久久久久久久久| 亚洲成人在线网站| 国产色综合久久| 一区二区三区视频观看| 国产精品视频1区| 亚洲免费中文字幕| 一区二区激情视频| 欧美不卡视频一区发布| 美女国产精品| 国产亚洲精品自拍| 亚洲尤物精选| 亚洲一区二区三区涩| 国产欧美一区二区视频| 一区二区三区三区在线| 99精品国产福利在线观看免费 | 精品成人在线| 亚洲私拍自拍| 美女黄色成人网| 国产精品一区二区你懂得| 欧美激情第10页| 亚洲电影成人| 久久久国产精彩视频美女艺术照福利| 亚洲无限乱码一二三四麻| 欧美国产视频日韩| 久久久久高清| 亚洲日本视频| 蜜臀av在线播放一区二区三区| 久久综合图片| 国产一区二区三区久久| 午夜久久资源| 久久精品av麻豆的观看方式 | 欧美中文字幕在线| 国产精品视频福利| 亚洲一区二区三区四区五区午夜 | 亚洲精品一区二区三区樱花| 欧美日韩另类国产亚洲欧美一级| 最新国产拍偷乱拍精品| 99精品视频免费全部在线| 欧美精品v国产精品v日韩精品 | 玖玖视频精品| 99re成人精品视频| 欧美人与性动交cc0o| 一本色道久久| 久久se精品一区精品二区| 国产色视频一区| 久久久久网址| 亚洲啪啪91| 亚洲精品国偷自产在线99热| 国产精品久久久久久久7电影| 欧美亚洲在线播放| 亚洲第一色中文字幕| 亚洲一区国产一区| 国户精品久久久久久久久久久不卡| 久久精品国亚洲| 久久亚洲一区二区三区四区| 亚洲一区二区三区乱码aⅴ| 国产农村妇女精品一区二区| 久久精品主播| 日韩视频中午一区| 久久青草久久| 一区二区三区久久网| 欧美欧美天天天天操| 免费av成人在线| 亚洲综合视频1区|