設(shè)計模式、框架、架構(gòu)

設(shè)計模式

工廠模式、適配器模式、策略模式等等

框架

一個框架可以包含多個設(shè)計模式??蚣芫褪且唤M相互協(xié)作的類,對于特定的一類軟件,框架構(gòu)成了一種可重用的設(shè)計。框架則是設(shè)計和代碼的一個混合體。
軟件框架是項目軟件開發(fā)過程中提取特定領(lǐng)域軟件的共性部分形成的體系結(jié)構(gòu),不同領(lǐng)域的軟件項目有著不同的框架類型??蚣艿淖饔迷谟冢河捎谔崛×颂囟I(lǐng)域軟件的共性部分,因此在此領(lǐng)域內(nèi)新項目的開發(fā)過程中代碼不需要從頭編寫,只需要在框架的基礎(chǔ)上進行一些開發(fā)和調(diào)整便可滿足要求;

  • C++語言的QT、MFC、gtk
  • Java語言的SSHSSI
  • php語言的 smarty(MVC模式)
  • python語言的django(MTV模式)

架構(gòu)

軟件體系機構(gòu)。體系結(jié)構(gòu)確定了系統(tǒng)整體結(jié)構(gòu)、層次劃分,不同部分之間的協(xié)作等設(shè)計考慮??蚣鼙燃軜?gòu)更具體。更偏重于技術(shù)涉嫌。確定框架后,軟件體系結(jié)構(gòu)也隨之確定,而對于同一軟件體系結(jié)構(gòu)(比如Web開發(fā)中的MVC),可以通過多種框架來實現(xiàn)。

MVC、MTV、MVP、CBD、ORM

MVC全名是Model View Controller,是模型(model)-視圖(view)-控制器(controller)的縮寫,一種軟件設(shè)計典范,用一種業(yè)務邏輯、數(shù)據(jù)、界面顯示分離的方法組織代碼,將業(yè)務邏輯聚集到一個部件里面,在改進和個性化定制界面及用戶交互的同時,不需要重新編寫業(yè)務邏輯。MVC被獨特的發(fā)展起來用于映射傳統(tǒng)的輸入、處理和輸出功能在一個邏輯的圖形化用戶界面的結(jié)構(gòu)中。

項目 設(shè)計模式 框架 架構(gòu)
應用領(lǐng)域 - - -
復用性 - - -

框架和設(shè)計模式的區(qū)別

有很多程序員往往把框架模式和設(shè)計模式混淆,認為MVC是一種設(shè)計模式。實際上它們完全是不同的概念。 框架、設(shè)計模式這兩個概念總?cè)菀妆换煜?,其實它們之間還是有區(qū)別的。

框架通常是代碼重用,而設(shè)計模式是設(shè)計重用,架構(gòu)則介于兩者之間,部分代碼重用,部分設(shè)計重用,有時分析也可重用。


在軟件生產(chǎn)中有三種級別的重用:

  • 內(nèi)部重用,即在同一應用中能公共使用的抽象塊;
  • 代碼重用,即將通用模塊組合成庫或工具集,以便在多個應用和領(lǐng)域都能使用;
  • 應用框架的重用,即為專用領(lǐng)域提供通用的或現(xiàn)成的基礎(chǔ)結(jié)構(gòu),以獲得最高級別的重用性。

框架與設(shè)計模式雖然相似,但卻有著根本的不同。

  • 設(shè)計模式是對在某種環(huán)境中反復出現(xiàn)的問題以及解決該問題的方案的描述,它比框架更抽象;
  • 框架可以用代碼表示,也能直接執(zhí)行或復用,而對模式而言只有實例才能用代碼表示;

設(shè)計模式是比框架更小的元素,一個框架中往往含有一個或多個設(shè)計模式,框架總是針對某一特定應用領(lǐng)域,但同一模式卻可適用于各種應用??梢哉f,框架是軟件,而設(shè)計模式是軟件的知識。

參考資源

1. MVC框架

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,232評論 25 708
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,661評論 19 139
  • 所謂格局,就是與眾不同,專注數(shù)學科學,但要提問,沒有疑問,不會設(shè)問的學生,沒有思維,謹小慎微膽子的受限制,也未有思...
    毛逗媽閱讀 159評論 0 0
  • 行行出狀元,知道誰說的嗎? 慈禧 Prefect
    瑩鴿鴿閱讀 101評論 0 0
  • 大家好,我就是人見人愛、花見花開、車見車載的小博,我又來啦。 請點擊此處輸入圖片描述 相信昨天大家都看到了,網(wǎng)易娛...
    故事bo閱讀 467評論 0 0

友情鏈接更多精彩內(nèi)容