变态重口极致另类在线-波多久久夜色精品国产-波多野结衣在线观看一区-波多野结衣在线观看一区二区-污污的网站免费阅读-污污视频网址

當(dāng)前位置: 首頁(yè)IT技術(shù) → 架構(gòu)基礎(chǔ)(Frameworks Fundamentals)

架構(gòu)基礎(chǔ)(Frameworks Fundamentals)

更多

  Windows編程很適合面向?qū)ο缶幊蹋ㄟ^(guò)建立封裝通用Windows編程任務(wù)的類(lèi),一個(gè)程序員能編寫(xiě)出更多的產(chǎn)品。例如,當(dāng)封裝窗口不同任務(wù)的類(lèi)建立以后,這個(gè)類(lèi)就可以一遍一遍地應(yīng)用,于是架構(gòu)革命就開(kāi)始了。

  New Term:架構(gòu)(framework)是一個(gè)類(lèi)的集合,這些類(lèi)可以通過(guò)封裝常用編程技術(shù)簡(jiǎn)化Windows編程,架構(gòu)也稱(chēng)為類(lèi)庫(kù)(class libraries),封裝(Encapsulation)的意思是通過(guò)提供一個(gè)簡(jiǎn)化的接口,把一個(gè)復(fù)雜的編程任務(wù)簡(jiǎn)單化。

  普通的架構(gòu)有封裝窗口、編輯框、列表框、圖形操作、位圖、滾動(dòng)欄、對(duì)話框等類(lèi)。

  為什么如此重視架構(gòu)?

  其根本在于用架構(gòu)使Windows編程比直接用C、匯編語(yǔ)言或Pascal語(yǔ)言更簡(jiǎn)便。例如用C++編寫(xiě)的加載和顯示一個(gè)位圖的代碼多達(dá)50多行,代碼看起來(lái)很?chē)樔耍捎肰CL實(shí)現(xiàn)等價(jià)的功能的代碼:

  Image.LoadFromFile('winnt.bmp');

  由此看出你到底喜歡哪一種方式?甚至都不必知道這個(gè)代碼到底干什么的就可以作出決定。VCL的版本更短,并且可讀性更強(qiáng)。

  架構(gòu)隱藏了不必知道的具體細(xì)節(jié),那個(gè)50多行的C++代碼中包含的每一件事情在VCL代碼中都在幕后完成了。當(dāng)VCL工作時(shí),不必知道幕后工作的每一個(gè)具體細(xì)節(jié),所有要知道就是構(gòu)成架構(gòu)的對(duì)象,以及把它們應(yīng)用到程序中。

  一個(gè)好的架構(gòu)要充分利用OOP,并且比其他的要利用的更好。Delphi中的Object Windows Library和Visual Component Library是面向?qū)ο缶幊痰臉O好示例,它們?yōu)閿[脫忙亂,集中精力完成重要的編程任務(wù)提供了恰到好處的抽象提升。

  如果要使所有的東西都變得很容易的話,就一定要放棄一些東西,這時(shí)千真萬(wàn)確的。由架構(gòu)編寫(xiě)的程序比用低級(jí)語(yǔ)言編寫(xiě)的程序要大而且要慢,這只是部分正確,由架構(gòu)編寫(xiě)的應(yīng)用程序不一定比其它語(yǔ)言編寫(xiě)的程序慢。當(dāng)然,用面向?qū)ο笳Z(yǔ)言有一些額外的內(nèi)部開(kāi)銷(xiāo),但絕大部分在一般的Windows程序中區(qū)別是不明顯的。

  初步趨向是由Delphi編寫(xiě)的程序比用諸如C等語(yǔ)言編寫(xiě)的程序要大。例如,假設(shè)一個(gè)簡(jiǎn)單的Windows程序,由C編寫(xiě)它是75KB,等價(jià)的程序用Delphi編寫(xiě)可能是250KB,這看起來(lái)好像區(qū)別很大,但這個(gè)例子只說(shuō)明了一種最壞的情況,在很小的程序中,C應(yīng)用程序與架構(gòu)編寫(xiě)的Delphi應(yīng)用程序其程序大小區(qū)別很大,但隨著程序的規(guī)模增加和復(fù)雜化,這兩者之間的區(qū)別就不太明顯了。

  程序大小不同的簡(jiǎn)單原因之一就是程序語(yǔ)言與面向?qū)ο笳Z(yǔ)言之間的不同,面向?qū)ο笳Z(yǔ)言(C++和Object Pascal)要為一些功能增加額外的開(kāi)銷(xiāo),其性能諸如異常處理,運(yùn)行時(shí)類(lèi)型信息(RTTI)和其他OPP內(nèi)容。其實(shí)代碼大小的不同于Object Pascal提供的性能交換是值得的。

  我也是很愿意犧牲一些代碼規(guī)模的大小來(lái)?yè)Q取Object Pascal和VCL提供的強(qiáng)大功能。換句話說(shuō),一般不愿意花一個(gè)月的時(shí)間去編寫(xiě)一個(gè)編譯成可執(zhí)行文件大小為100KB的Windows程序,而同樣的程序在Delphi只需要兩天時(shí)間,只是它編譯出來(lái)的可執(zhí)行文件大小為400KB,與節(jié)省開(kāi)發(fā)時(shí)間相比,其結(jié)果的可執(zhí)行文件大小并不重要。

    用架構(gòu)來(lái)引導(dǎo)面向?qū)ο缶帉?xiě)和設(shè)計(jì)

  如果把這種瘋狂玩意就叫做Windows編程的話,那么實(shí)際上也就等于終止了窺視架構(gòu)的源代碼。遲早是要知道架構(gòu)是怎么工作的。從VCL源代碼中可以得到這種信息。

  應(yīng)該花一些時(shí)間來(lái)瀏覽一下VCL源代碼,開(kāi)始時(shí)可能有點(diǎn)令人生畏,但看了一會(huì)后,就會(huì)看懂設(shè)計(jì)者在做什么,不要低估自己,用所學(xué)的知識(shí)最大限度地理解Object Pascal,把一些復(fù)雜難懂的內(nèi)容先放下來(lái),等以后再說(shuō)。

  要注意VCL設(shè)計(jì)者是怎樣在類(lèi)中使用私有的、保護(hù)的和公用的,注意應(yīng)該不讓用戶(hù)知道的內(nèi)容是怎樣從公眾的視線中隱藏起來(lái)的。研究VCL源代碼可以學(xué)會(huì)很多有關(guān)Object Pascal和面向?qū)ο笤O(shè)計(jì)方面的知識(shí)。

熱門(mén)評(píng)論
最新評(píng)論
發(fā)表評(píng)論 查看所有評(píng)論(0)
昵稱(chēng):
表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
字?jǐn)?shù): 0/500 (您的評(píng)論需要經(jīng)過(guò)審核才能顯示)
主站蜘蛛池模板: 成年男女免费大片在线观看 | 激情婷婷成人亚洲综合 | 中国一及黄色片 | 黄色小视频在线免费看 | 一级午夜免费视频 | 欧美精品午夜久久久伊人 | 一区二区福利 | 99免费在线观看视频 | 久久成人乱小说 | 欧美一区二区另类有声小说 | 欧美成人午夜不卡在线视频 | 国产一区成人 | 亚洲欧美日韩中文字幕网址 | 中文字幕在线综合 | 亚洲系列中文字幕一区二区 | 九月婷婷人人澡人人添人人爽 | 亚洲第一区香蕉_国产a | 亚洲国产日韩无在线播放 | 成人欧美视频在线观看 | 日韩欧美在线综合网 | 国产成人精品免费2021 | 国产亚洲视频在线 | 在线色| 国产香蕉国产精品偷在线观看 | 青草视频免费观看 | 你懂的国产高清在线播放视频 | 好色站| 女同志videos最新另 | 91视频站 | 极品美女丝袜被的网站 | 日韩精品欧美亚洲高清有无 | 免费看一片 | 欧洲真实呦女网站 | 精品国产免费人成高清 | 免费午夜剧场 | 中文日韩字幕 | 大桥未久aⅴ一区二区 | 在线波多野结衣 | 久久国产精品亚洲一区二区 | 欧美在线观看视频一区 | 欧美日韩精品在线播放 |