小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

也說慶豐包子鋪:三層架構(gòu)與小籠包

 昵稱10504424 2014-01-23

  早上吃早點(diǎn)的時(shí)候,突發(fā)靈感,結(jié)合吃的小籠包和日常的開發(fā)經(jīng)驗(yàn)來說一下分層的應(yīng)用。

  首先,談一下什么是三層架構(gòu),所謂的三層開發(fā)就是將整個(gè)業(yè)務(wù)應(yīng)用劃分為表示層-業(yè)務(wù)邏輯層―數(shù)據(jù)訪問層-數(shù)據(jù)庫等,有的還要細(xì)一些,明確地將客戶端的表示層、業(yè)務(wù)邏輯訪問、和數(shù)據(jù)訪問及數(shù)據(jù)庫訪問劃分出來,十分有利于系統(tǒng)的開發(fā),維護(hù)、部署和擴(kuò)展。

  軟件要分層,其實(shí)總結(jié)一句話,是為了實(shí)現(xiàn)“高內(nèi)聚、低耦合”。采用“分而治之”的思想,把問題劃分開來各個(gè)解決,易于控制,易于延展,易于分配資源。

  這種三層結(jié)構(gòu)有什么優(yōu)勢呢?

  1. 通過將整個(gè)系統(tǒng)分為不同的邏輯塊,大大降低了應(yīng)用系統(tǒng)開發(fā)和維護(hù)的成本。

  三層結(jié)構(gòu)將表示部分和業(yè)務(wù)邏輯部分按照客戶層和應(yīng)用服務(wù)器相分離,客戶端和應(yīng)用服務(wù)器、應(yīng)用服務(wù)器和數(shù)據(jù)庫服務(wù)器之間的通信以及異構(gòu)平臺(tái)之間的數(shù)據(jù)交換等都可以通過中間件或者相關(guān)程序來實(shí)現(xiàn)。當(dāng)數(shù)據(jù)庫或者應(yīng)用服務(wù)器的業(yè)務(wù)邏輯改變時(shí),客戶端并不需要改變,反之亦然,從而大大提高了系統(tǒng)模塊的復(fù)用性,縮短了開發(fā)周期,降低了維護(hù)費(fèi)用。

  趣味理解:

  假設(shè)飯店這樣來做小籠包:

  一層蒸餃,

  一層肉包,

  一層素包。

  首先這種方式我們可以讓做包子的分成不同的小組,來負(fù)責(zé)做不同的包子。當(dāng)做好了每一種包子,他們可以很方便的知道,該放到哪個(gè)籠里,不至于挨個(gè)去查看該放在哪里,我們也很容易地將籠屜放到火上面去,而不會(huì)影響其他籠的加熱。當(dāng)我們要吃肉包或蒸餃時(shí),我們也很容易就能找到我們所需要的,非常節(jié)省時(shí)間和體力。把肉包或蒸餃拿走或者增加,并不影響素包的加熱。

  如果我們把這些都放在一個(gè)大籠里,你覺得會(huì)怎么樣?會(huì)不會(huì)很亂,維護(hù)起來很浪費(fèi)時(shí)間,不但找起來麻煩,而其每次揭開鍋都會(huì)對其他的有影響。

  2. 將數(shù)據(jù)訪問和邏輯操作都集中到組件中,增強(qiáng)了系統(tǒng)的復(fù)用性。

  如:將數(shù)據(jù)訪問集中到數(shù)據(jù)訪問層的組件中,從而減少了應(yīng)用程序中的重復(fù)代碼,每個(gè)需要訪問數(shù)據(jù)庫、表的窗體都使用相同的組件。

  如:一些共性的邏輯操作都集中封裝在邏輯層的組件中,每一個(gè)使用該方法的操作,可以共享來訪問該組件。

  趣味理解:

  簡單的理解,籠屜本身就是一個(gè)重用的例子,如果我們使用一次性的籠(像一次性筷子一樣理解),會(huì)浪費(fèi)多少人工來做啊(重復(fù)編寫麻煩),并且會(huì)有很大的資源浪費(fèi)(代碼冗余),最后還要進(jìn)行垃圾處理(后期維護(hù))。并且,如果籠屜和爐火的鍋按一種規(guī)范和標(biāo)準(zhǔn)(接口)來做,這樣的籠屜不但可以在這里用,也可以拿到別的地方用。(雖然這樣理解不太確切,簡單的這樣理解好了)

  3. 系統(tǒng)的擴(kuò)展性大大增強(qiáng)。

  模塊化使得系統(tǒng)很容易在縱向和水平兩個(gè)方向拓展:一方面可以將系統(tǒng)升級(jí)為更大、更有力的平臺(tái),同時(shí)也可以適當(dāng)增加規(guī)模來增強(qiáng)系統(tǒng)的網(wǎng)絡(luò)應(yīng)用。由于擺脫了系統(tǒng)同構(gòu)性的限制,使得分布數(shù)據(jù)處理成為可能。在擴(kuò)充或修改功能時(shí),基本不會(huì)破壞原有結(jié)構(gòu)的穩(wěn)定性。

  趣味理解:

  隨著顧客的需要,我們現(xiàn)在需要增加新品種,如蒸饅頭,蒸地瓜,那么直接可以增加一層籠就是了,對其他籠不會(huì)有什么影響。

  三層結(jié)構(gòu)在營造企業(yè)競爭優(yōu)勢中的作用主要體現(xiàn)在模塊化設(shè)計(jì)使得用戶在現(xiàn)有結(jié)構(gòu)的基礎(chǔ)上實(shí)現(xiàn)了系統(tǒng)擴(kuò)展,從而提高企業(yè)信息化的速度和業(yè)務(wù)水平;同時(shí)三層結(jié)構(gòu)中中間件的出現(xiàn)使得用戶可以直接從市場上選擇合適的產(chǎn)品來構(gòu)建系統(tǒng),大大降低了開發(fā)周期和開發(fā)費(fèi)用。

  但分層結(jié)構(gòu)也有缺點(diǎn)也不是越多越好,那樣管理很多層會(huì)比較麻煩,運(yùn)行效率可能比較低。所以,一個(gè)具備良好層次結(jié)構(gòu)的系統(tǒng),其層的數(shù)目要恰到好處才行。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請遵守用戶 評(píng)論公約

    類似文章 更多