MVC是框架?是設計模式?是架構?還是

2022-05-06 15:03:15 字數 1159 閱讀 9430

文章**:

很多人都知道mvc,都知道就是把將資料和顯示分離,知道model—view—controller,但是讓你說mvc是什麼東西,你可能不知如何回答。那麼mvc到底是什麼玩意呢?框架?設計模式?架構?都不是。

可以肯定的說(個人認為),mvc不是框架,不是設計模式,更不是架構,它僅僅是一種架構模式。它不描述系統架構,也不指定使用什麼技術,僅僅是描述系統架構的一種模式,類似於aop、ioc、orm等等,具體的框架技術則是基於這些模式的一些實現而已,比如基於mvc模式的框架有著名的struts、spring mvc、jsf、tapestry以及比較老的webwork等等,基於orm模式的框架有hibernate、mybatis、ibatis以及.net比較有名的entity framework等等。

我畫了一張圖來描述這幾個概念之間的關係,主要是描述包含關係,個人理解而已:

設計模式(design pattern:是一套被反覆使用、多數人知道的、經過分類編目的、**設計經驗的總結。從定義上看,它涉及到了**級別,側重於解決實際的現實的問題。比如我們應該如何為不同的商品設計折扣的方式,採用策略模式唄。

框架(framework):是整個或部分系統的可重用設計,表現為一組抽象構件及構件例項間互動的方法;另一種定義認為,框架是可被應用開發者定製的應用骨架。前者是從應用方面而後者是從目的方面給出的定義。從定義看,它涉及到了一堆構件,以及這些構件之間的依賴關係、責任分配和流程控制等,說白了就是一堆類而已。這些類以及之間的關係構成了框架。比如想要讓使用者通過servlet來訪問頁面,怎麼辦?用struts唄。

架構模式(架構風格):乙個架構模式描述軟體系統裡的基本的結構組織或綱要。架構模式提供一些呈先定義好的子系統,指定它們的責任,並給出把它們組織在一起的法則和指南。從定義上來看,它是在指導我們如何組織**,是一種具有指導意義的思想,比如要解決系統的資料與顯示分離的問題,那就使用mvc模式唄。

小結一下:

其實吧,軟體這個行業的很多名詞都沒有特別準確的定義,好多概念是十分抽象和難理解的。但是回過頭來看,我們不是做理論研究的,只要我們能夠在問題的出現的場景中,使用最為合適的技術去解決它,就可以了。軟體這行,紙上談兵絕對是不行的,能為企業和公司解決實際問題,帶來經濟效益,促進資訊科技轉化為生產力,實現中國夢,乃我們最終的夙願。

什麼是MVC設計模式

世界上並沒有完美的程式,但是我們並不因此而沮喪,因為寫程式就是乙個不斷追求完美的過程。意圖適用於應用程式的分層開發 model 業務處理與資料固化 view 資料展示 controller model與view的協調與控制 類圖 例項 static class model public string...

什麼是MVC框架

1 什麼是mvc model view controller,是模型 檢視 控制器的縮寫,一種軟體設計典範,用一種業務邏輯 資料 介面顯示分離的方法組織 將業務邏輯聚集到乙個元件裡,在改進和個性化定製介面的及使用者互動的時候,不需要重新編寫業務邏輯。mvc用於對映傳統的輸入 處理 輸出功能在乙個邏輯...

什麼是 MVC 模式?

mvc model view controller,模型 檢視 控制器模式 用於表示一種軟體架構模式。它把軟體系統分為三個基本部分 模型 model 檢視 view 和控制器 controller mvc 由 trygve reenskaug 提出,最早被應用在 smalltalk 80 環境中。模...