標籤:style c class java tar http
MVC是什嗎?
MVC是一個架構模式,它用於把應用程式的輸入、處理和輸出進行強制性的分開。使用MVC應用程式被分成三個核心組件:模型、視圖、控制器。它們各自處理自己的任務。最典型的MVC就是JSP+Servlet+javabean的模式。
MVC開始是存在於傳統型程式中的,M是指業務模型,V是指使用者介面,C則是控制器,使用MVC的目的是將M和V的實現代碼分離,從而使同一個程式可以使用不同的表現形式。比如一批統計資料可以分別用柱狀圖、餅圖來表示。C存在的目的則是確保M和V的同步,一旦M改變,V應該同步更新。
MVC的變成模式:
MVC 是一種使用 MVC(Model View Controller 模型-視圖-控制器)設計建立 Web 應用程式的模式:
- Model(模型)表示應用程式核心(比如資料庫記錄列表)。
- View(視圖)顯示資料(資料庫記錄)。
- Controller(控制器)處理輸入(寫入資料庫記錄)。
MVC 模式同時提供了對 HTML、CSS 和 JavaScript 的完全控制。
Model(模型)是應用程式中用於處理應用程式資料邏輯的部分。
通常模型對象負責在資料庫中存取資料。模型表示企業資料和商務規則。在MVC的三個組件中,模型擁有最多的處理任務。例如它可能用像EJBs和ColdFusion Components這樣的構件對象來處理資料庫,被模型返回的資料是中立的,就是說模型與資料格式無關,這樣一個模型能為多個視圖提供資料,由於應用於模型的代碼只需寫一次就可以被多個視圖重用,所以減少了代碼的重複性。
View(視圖)是應用程式中處理資料顯示的部分。
通常視圖是依據模型資料建立的。MVC好處是它能為應用程式處理很多不同的視圖。在視圖中其實沒有真正的處理髮生,不管這些資料是聯機儲存的還是一個僱員列表,作為視圖來講,它只是作為一種輸出資料並允許使用者操縱的方式。
Controller(控制器)是應用程式中處理使用者互動的部分。
通常控制器負責從視圖讀取資料,控制使用者輸入,並向模型發送資料。MVC 分層有助於管理複雜的應用程式,因為您可以在一個時間內專門關注一個方面。例如,您可以在不依賴商務邏輯的情況下專註於視圖設計。同時也讓應用程式的測試更加容易。 MVC 分層同時也簡化了分組開發。不同的開發人員可同時開發視圖、控制器邏輯和商務邏輯。控制器接受使用者的輸入並調用模型和視圖去完成使用者的需求,所以當單擊Web頁面中的超連結和發送Html表單時,控制器本身不輸出任何東西和做任何處理。它只是接收請求並決定調用哪個模型構件去處理請求,然後再確定用哪個視圖來顯示返回的資料。
架構和設計模式的區別:
架構通常是
代碼重用,而設計模式是
設計重用,架構則介於兩者之間,部分代碼重用,部分設計重用,有時分析也可重用。