日韩精品无码免费一区二区三区|青青久久久国产线免观|亚洲精品久久久久久久|国精品无码一区二区三区免费视频|亚洲熟妇无码中文高清免费|99久久久国产精品免费不卡|精品贵妇一区二区三区

歡迎您訪問(wèn)鄭州興邦電子股份有限公司官方網(wǎng)站!
阿里巴巴誠(chéng)信通企業(yè)
全國(guó)咨詢熱線:40000-63966
興邦電子,中國(guó)水控機(jī)第一品牌

聯(lián)系興邦電子

全國(guó)咨詢熱線:40000-63966

售后:0371-55132951/55132952

工廠:河南省 鄭州市 高新區(qū)蓮花街電子電器產(chǎn)業(yè)園

關(guān)于BS MVC分層思想的發(fā)展概要

文章出處:http://www.fang1.net 作者:興邦開(kāi)發(fā)部 人氣: 發(fā)表時(shí)間:2015年12月21日

[文章內(nèi)容簡(jiǎn)介]:目前BS系統(tǒng)常見(jiàn)的MVC設(shè)計(jì)框架以及這些框架的簡(jiǎn)單介紹

關(guān)于BS MVC分層思想的發(fā)展概要

 

今天,我們見(jiàn)到的絕大部分應(yīng)用,都是基于B/S(瀏覽器/服務(wù)器)架構(gòu)的,其中的服務(wù)器就是Web服務(wù)器??梢?jiàn),Web應(yīng)用是目前廣泛使用的應(yīng)用模式,但早期的Web應(yīng)用全部是靜態(tài)的HTML頁(yè)面,用于將一些文本信息呈現(xiàn)給瀏覽者,但這些信息是固定寫(xiě)在HTML頁(yè)面里的,該頁(yè)面不具備與用戶交互的能力,沒(méi)有動(dòng)態(tài)顯示的功能。

很自然地,人們希望Web應(yīng)用里應(yīng)該包含一些能動(dòng)態(tài)執(zhí)行的頁(yè)面,最早的CGI(通用網(wǎng)關(guān)接口)技術(shù)滿足了該要求,CGI技術(shù)使得Web應(yīng)用可以與客戶端瀏覽器交互,不再需要使用靜態(tài)的HTML頁(yè)面。CGI技術(shù)可以從數(shù)據(jù)庫(kù)讀取信息,將這些信息呈現(xiàn)給用戶;還可以獲取用戶的請(qǐng)求參數(shù),并將這些參數(shù)保存到數(shù)據(jù)庫(kù)里。

CGI技術(shù)開(kāi)啟了動(dòng)態(tài)Web應(yīng)用的時(shí)代,給了這種技術(shù)無(wú)限的可能性。但CGI技術(shù)存在很多缺點(diǎn),其中最大的缺點(diǎn)就是開(kāi)發(fā)動(dòng)態(tài)Web應(yīng)用難度非常大,而且在性能等各方面也存在限制。到1997年時(shí),隨著Java語(yǔ)言的廣泛使用,Servlet技術(shù)迅速成為動(dòng)態(tài)Web應(yīng)用的主要開(kāi)發(fā)技術(shù)。

隨著實(shí)際Web應(yīng)用的使用越來(lái)越廣泛,Web應(yīng)用的規(guī)模也越來(lái)越大,開(kāi)發(fā)人員發(fā)現(xiàn)動(dòng)態(tài)Web應(yīng)用的維護(hù)成本越來(lái)越大,即使只需要修改該頁(yè)面的一個(gè)簡(jiǎn)單按鈕文本,或者一段靜態(tài)的文本內(nèi)容,也不得不打開(kāi)混雜的動(dòng)態(tài)腳本的頁(yè)面源文件進(jìn)行修改——這是一種很大的風(fēng)險(xiǎn),完全有可能引入新的錯(cuò)誤。

這個(gè)時(shí)候,人們意識(shí)到:使用單純的ASP,或者JSP頁(yè)面充當(dāng)過(guò)多角色是相當(dāng)失敗的選擇,這對(duì)于后期的維護(hù)相當(dāng)不利。慢慢地開(kāi)發(fā)人員開(kāi)始在Web開(kāi)發(fā)中使用MVC模式。

MVC思想將一個(gè)應(yīng)用分成三個(gè)基本部分:Model(模型)、View(視圖)和Controller(控制器),這三個(gè)部分以最少的耦合協(xié)同工作,從而提高應(yīng)用的可擴(kuò)展性及可維護(hù)性。

在經(jīng)典的MVC模式中,事件由控制器處理,控制器根據(jù)事件的類型改變模型或視圖,反之亦然。具體地說(shuō),每個(gè)模型對(duì)應(yīng)一系列的視圖列表,這種對(duì)應(yīng)關(guān)系通常采用注冊(cè)來(lái)完成,即:把多個(gè)視圖注冊(cè)到同一個(gè)模型,當(dāng)模型發(fā)生改變時(shí),模型向所有注冊(cè)過(guò)的視圖發(fā)送通知,接下來(lái),視圖從對(duì)應(yīng)的模型中獲得信息,然后完成視圖顯示的更新。

從設(shè)計(jì)模式的角度來(lái)看,MVC思想非常類似于一個(gè)觀察者模式,但與觀察者模式存在少許差別:觀察者模式下觀察者和被觀察者可以是兩個(gè)互相對(duì)等的對(duì)象,但對(duì)于MVC思想而言,被觀察者往往只是單純的數(shù)據(jù)體,而觀察者則是單純的視圖頁(yè)面。

概括起來(lái),MVC有如下特點(diǎn) :

多個(gè)視圖可以對(duì)應(yīng)一個(gè)模型。按MVC設(shè)計(jì)模式,一個(gè)模型對(duì)應(yīng)多個(gè)視圖,可以減少代碼的復(fù)制及代碼的維護(hù)量,一旦模型發(fā)生改變,也易于維護(hù)。

模型返回的數(shù)據(jù)與顯示邏輯分離。模型數(shù)據(jù)可以應(yīng)用任何的顯示技術(shù),例如,使用JSP頁(yè)面、Velocity模板或者直接產(chǎn)生Excel文檔等。

應(yīng)用被分隔為三層,降低了各層之間的耦合,提供了應(yīng)用的可擴(kuò)展性。

控制層的概念也很有效,由于它把不同的模型和不同的視圖組合在一起,完成不同的請(qǐng)求。因此,控制層可以說(shuō)是包含了用戶請(qǐng)求權(quán)限的概念。

           —  MVC更符合軟件工程化管理的精神。不同的層各司其職,每一層的組件具有相同的特征,有利于通過(guò)工程化和工具化產(chǎn)生管理程序代碼。

本文關(guān)鍵詞:BS框架
上一篇:BS軟件之框架DWZ[ 12-21 ] 下一篇:BS平臺(tái)登錄方法[ 12-24 ]
回到頂部
彝良县| 丹阳市| 基隆市| 辽中县| 兴山县| 方城县| 台中市| 博罗县| 栖霞市| 犍为县| 台中县| 江西省| 徐水县| 香港| 彰化市| 威海市| 衡阳县| 正宁县| 连州市| 塘沽区| 广河县| 辰溪县| 元谋县| 额尔古纳市| 托克托县| 凌源市| 搜索| 乌鲁木齐市| 全南县| 独山县| 洞头县| 若尔盖县| 萝北县| 通州区| 崇明县| 大方县| 乡城县| 广宗县| 固始县| 定襄县| 无锡市|