聲明:本欄目所使用的素材都是凱哥學堂VIP學員所寫,學員有權匿名,對文章有最終解釋權;凱哥學堂旨在促進VIP學員互相學習的基礎上公開筆記。
架構模式
一般的程序架構都分為B/S(伺服器---瀏覽器)和C/S(伺服器---客戶端)架構。 什麼模式才算是B/S呢?
並不是說沒有客戶端的就是B/S架構,而是重伺服器,輕客戶端。瀏覽器就是一種輕客戶端,不需要安裝下載其他什麼插件,通過協議就可以對伺服器產生訪問。
架構模式,也叫架構風格,一個架構模式描述軟體系統裡的基本的結構組織或綱要。架構模式提供一些呈先定義好的子系統,指定它們的責任,並給出把它們組織在一起的法則和指南。一個架構模式常常可以分解成很多個設計模式的聯合使用。MVC模式就屬於架構模式。
Web程序架構一般分為三種模式:jsp,jsp+servlet,jsp+servlet+javaclass
我們會發現隨著程序的發展,為什麼層次會越來越多呢?
Servlet需要依賴伺服器進行邏輯運算,如果以後不實用jsp,而是用其他的,這樣邏輯就無法運行,所以要將他們分離出來。
MVC架構
MVC全名是Model View Controller,是模型(model)-視圖(view)-控制器(controller)的縮寫,一種軟體設計典範,用一種業務邏輯、數據、界面顯示分離的方法組織代碼,將業務邏輯聚集到一個部件裡面,在改進和個性化定製界面及用戶交互的同時,不需要重新編寫業務邏輯。MVC被獨特的發展起來用於映射傳統的輸入、處理和輸出功能在一個邏輯的圖形化用戶界面的結構中。
MVC開始是存在於桌面程序中的,M是指業務模型,V是指用戶界面,C則是控制器,使用MVC的目的是將M和V的實現代碼分離,從而使同一個程序可以使用不同的表現形式。比如一批統計數據可以分別用柱狀圖、餅圖來表示。C存在的目的則是確保M和V的同步,一旦M改變,V應該同步更新。[1-2]
模型-視圖-控制器(MVC)是Xerox PARC在二十世紀八十年代為程式語言Smalltalk-80發明的一種軟體設計模式,已被廣泛使用。後來被推薦為Oracle旗下Sun公司JavaEE平臺的設計模式,並且受到越來越多的使用ColdFusion和PHP的開發者的歡迎。模型-視圖-控制器模式是一個有用的工具箱,它有很多好處,但也有一些缺點。
MVC架構的演變也是從Model 1進化到了Model 2,他們的區別是在於model 2不管是請求還是響應,都會通過控制器,相當於都是通過一個中介著手的。