日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

架构(三层架构)、框架(MVC)、设计模式三者异同点

發布時間:2023/12/2 c/c++ 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 架构(三层架构)、框架(MVC)、设计模式三者异同点 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

前言:

? ? ? ? ??本博客主要針對架構、框架和設計模式三者的差別、還有三層和MVC的差別進行討論、對于這三者一點都不了解的、請點在維基和百度百科上補補課、這里就不發鏈接了


軟件架構(software architecture)


? ? ? ? ??軟件的架構是系統的一個草圖、闡述了各個組件之間的通訊、劃分層次、一旦系統開始具體設計、架構藍圖就非常難甚至無法更改、是由軟件架構師從無到有設計出來的。


? ? ? ?? 例: 三層架構:一種設計軟件架構的思想

? ? ? ? ? ? ? ? ? ? ? ???把軟件上從邏輯上分為、表示層(UI)業務邏輯層(BLL)數據訪問層(DAL)

? ? ? ? ? ? ? ? ? ? ? ??目的:低耦合、高內聚、各司其職、達到易更換、改動、能夠分散部署、編碼。


三層架構具體解釋:http://blog.csdn.net/u010191034/article/details/24588675


軟件框架(Softwareframework)


? ? ? ? ??軟件框架是在一定領域內、別人已經對這個領域制作軟件所需的基礎架構功能、進行了總結、做出了有代碼實體的軟件框架結構、假設要制作這一領域的軟件、能夠在別人寫好的框架上、繼續設計、編寫自己的軟件、骨頭架上填肉、框架有一定的局限性。


例:MVC(框架)


? ? ? ???英文Model View Controller、是針對Web開發、已經寫好有代碼的框架、分別為M模型(model)-V視圖(view)-C控制器(controller)三部分


? ? ? ? ??目的:模型和視圖分離開、使得一個模型可被多個視圖使用、簡單說就是相同的一個站點、用手機的視圖(界面)和電腦的視圖、能夠共用一個模型。


設計模式(Design pattern)

? ? ? ? ??對軟件設計中普遍存在(重復出現)的各種問題,所提出的解決方式、是一種解決方式的思想、不拘泥于代碼、通常以類型或對象來描寫敘述當中的關系和相互作用、依賴與抽象、來達到解耦和、可寬展、易維護等、設計模式是用來解決這個問題的。


三者差別

? ? ? ? ??軟件架構是指軟件架構師在制作軟件的時候、對軟件規劃的一種藍圖、通常是分層、畫出各個組件的關系。

? ? ? ? ??軟件框架是指在特定的領域內、已經有人寫好的框架(有代碼)、框架有局限性、僅僅限特定領域。

? ? ? ? ??設計模式是指針對一些編程實際的問題所提出的抽象解決方式、用類與類之間的關系相互作用、達到目的。

三層架構與MVC的差別

? ? ? ? ??根本差別是三成是機構而MVC是框架、MVC是應用與Web別人已經寫好的代碼、如ASP.NET就能夠直接點擊MVC、會自己主動生成框架代碼、而三層是做軟件自己劃分的、是一種制作軟件的思想。


有圖有真相、以下是ASP.NET的建項目

? ? ? ? ? ? ?

? ? ? ? ? ? ?

他倆的共同點就是都分成了三個、折讓人們非常easy誤解

? ? ? ? ??并且三層的UI層與MVC的M和C、功能非常像

? ? ? ? ??而MVC的V和BLL和DLL、功能非常像

? ? ? ? ??如圖


? ? ? ? ??盡管相似、可是從根本上就不是一個東西呦!由于架構是一種做軟件的思想、而框架是人們已經對特定領域軟件的共同特性、所編寫好的代碼成品。


所以

? ? ? ? ??軟件架構>軟件框架>設計模式

? ? ? ? ??當然從解耦和的觀點來看、這三個都是以解耦為目的、也是面向對象、做出更好的程序、所以什么一樣不一樣的、是看在哪個層面看


如:

你買了兩個iPhone6手機是一樣嗎?

? ? ? ? ? 從型號來看、都是蘋果6手機、是一樣的

? ? ? ? ? 從安裝軟件上比可能就不一樣了


? ? ? ? ? ?所以、有人說MVC和三成架構是一個東西、沒錯、都是為了解耦和、有人說MVC和三層架構不是一個東西、也對、MVC有實際的框架代碼、三層架構是做軟件的一種思想、就好像設計模式一樣、三層是做軟件的思想、設計模式是解決這個問題的思想。


? ? ? ? ? ?正所謂:橫看成嶺側成峰、遠近高低各不同、事事無絕對、多學多理解、今天寫的挺濃縮的、希望能幫到大家、也希望大家看到也能多給我提提建議、謝謝!



———————————————想跟503說再見……———————————————

——————————————chenchen———————————————






轉載于:https://www.cnblogs.com/gcczhongduan/p/4362105.html

總結

以上是生活随笔為你收集整理的架构(三层架构)、框架(MVC)、设计模式三者异同点的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。