宋相陽 王曉紅
【摘要】本文以新聞發(fā)布系統(tǒng)為實(shí)例,介紹了MVC設(shè)計(jì)模式在B/S結(jié)構(gòu)系統(tǒng)中的應(yīng)用。通過運(yùn)用MVC設(shè)計(jì)模式,大大提高了新聞發(fā)布系統(tǒng)的開發(fā)效率,實(shí)現(xiàn)了新聞數(shù)據(jù)展示和新聞數(shù)據(jù)控制的分離,降低了系統(tǒng)模塊之間的耦合性,使系統(tǒng)結(jié)構(gòu)更加合理。尤其是在團(tuán)隊(duì)合作時(shí),有利于團(tuán)隊(duì)分工合作,提高系統(tǒng)的開發(fā)效率和質(zhì)量,也有利于系統(tǒng)的后期維護(hù)。
【關(guān)鍵詞】新聞發(fā)布系統(tǒng) B/S結(jié)構(gòu) MVC設(shè)計(jì)模式
【中圖分類號】G64 【文獻(xiàn)標(biāo)識碼】A 【文章編號】2095-3089(2018)27-0253-01
前言
在互聯(lián)網(wǎng)高速發(fā)展的今天,網(wǎng)絡(luò)成為了新聞信息傳播的主流,而一個(gè)良好的新聞發(fā)布系統(tǒng)對新聞的傳播起到了至關(guān)重要的作用。本文就是借鑒徐麗妹等人開發(fā)的基于MVC設(shè)計(jì)模式的音樂檢測系統(tǒng)[1],將MVC設(shè)計(jì)模式應(yīng)用到新聞發(fā)布系統(tǒng)的設(shè)計(jì)中來,利用MVC設(shè)計(jì)模式的優(yōu)點(diǎn),以期達(dá)到快速開發(fā),提高新聞發(fā)布系統(tǒng)的開發(fā)效率和開發(fā)質(zhì)量。
一、MVC設(shè)計(jì)模式
(一)MVC簡介
MVC是一種軟件設(shè)計(jì)模式,被軟件開發(fā)者廣泛使用,它把一個(gè)應(yīng)用系統(tǒng)的組成分解成模型(Model)、視圖(View)、控制器(Controller)三個(gè)部件。模型是應(yīng)用程序用來處理數(shù)據(jù)邏輯的部分。視圖是應(yīng)用程序中處理數(shù)據(jù)顯示的部分。控制器是應(yīng)用程序中處理用戶和視圖交互的部分。
(二)MVC設(shè)計(jì)模式的優(yōu)點(diǎn)
從以往的ASP.NET應(yīng)用開發(fā)和使用MVC設(shè)計(jì)模式進(jìn)行開發(fā)相對比,MVC設(shè)計(jì)模式可以將用戶界面和模型進(jìn)行分離,降低了系統(tǒng)模塊間的耦合性。同時(shí),一個(gè)模型可以對應(yīng)多個(gè)視圖,一個(gè)視圖也可以對應(yīng)多個(gè)模型,提高了代碼的重用率,減少了代碼的數(shù)量,提高了開發(fā)效率[2]。而控制器是視圖和模型的橋梁,控制器將不同的視圖和不同的模型連接起來,完成不同的請求,便于系統(tǒng)開發(fā)不同的功能。
二、基于MVC設(shè)計(jì)模式的新聞發(fā)布系統(tǒng)的設(shè)計(jì)
(一)系統(tǒng)設(shè)計(jì)需求
本系統(tǒng)將用戶分為三類:新聞發(fā)布者、新聞瀏覽者、新聞網(wǎng)站管理者[3]。新聞發(fā)布者能夠通過本系統(tǒng)對新聞進(jìn)行可視化編輯并進(jìn)行發(fā)布;新聞瀏覽者可以實(shí)時(shí)地對新聞進(jìn)行在線瀏覽和相關(guān)附件的下載;新聞網(wǎng)站管理者能夠?qū)π侣劙l(fā)布者和新聞信息進(jìn)行相關(guān)的增刪查改操作,同時(shí),也能夠?qū)W(wǎng)站首頁的輪播圖進(jìn)行更換。
(二)數(shù)據(jù)流圖
數(shù)據(jù)流圖從數(shù)據(jù)傳遞和加工的角度,以圖形的方式來表達(dá)系統(tǒng)的邏輯功能、數(shù)據(jù)在系統(tǒng)內(nèi)部的邏輯流向和邏輯變換過程,是結(jié)構(gòu)化系統(tǒng)分析方法的主要表達(dá)工具及用于表示軟件模型的一種圖示方法。
(三)數(shù)據(jù)庫設(shè)計(jì)
通過對用戶進(jìn)行需求分析,我們可以得到新聞發(fā)布系統(tǒng)的需求。在此基礎(chǔ)上,設(shè)計(jì)的數(shù)據(jù)庫包含的數(shù)據(jù)表有 :新聞網(wǎng)站管理者信息表Administrators,新聞發(fā)布者信息表UserTable,新聞信息表NewsTable,新聞圖片信息表ImageUrl。
(四)系統(tǒng)結(jié)構(gòu)設(shè)計(jì)
本新聞發(fā)布系統(tǒng)是一個(gè)B/S結(jié)構(gòu)的應(yīng)用。借鑒張式福等人設(shè)計(jì)的健康監(jiān)護(hù)管理系統(tǒng)[4],在本應(yīng)用系統(tǒng)中,使用HTTP協(xié)議的請求與響應(yīng)來實(shí)現(xiàn)MVC設(shè)計(jì)模式,是一個(gè)很好的選擇。數(shù)據(jù)庫用來存儲數(shù)據(jù),模型(Model)用來進(jìn)行新聞和用戶數(shù)據(jù)邏輯的處理,控制器(Controller)用來處理新聞界面和系統(tǒng)用戶交互,視圖(View)用來將新聞信息展示到瀏覽器上,供用戶瀏覽。
三、基于MVC設(shè)計(jì)模式的新聞發(fā)布系統(tǒng)的實(shí)現(xiàn)
MVC設(shè)計(jì)模式應(yīng)用于整個(gè)新聞發(fā)布系統(tǒng)的設(shè)計(jì)過程。在系統(tǒng)結(jié)構(gòu)的View層中,實(shí)現(xiàn)了網(wǎng)站瀏覽中心、網(wǎng)站管理中心和新聞發(fā)布中心界面的設(shè)計(jì)。Model層存儲了各種信息的結(jié)構(gòu);數(shù)據(jù)庫存儲了發(fā)布的新聞信息。在Controller層,實(shí)現(xiàn)了對新聞實(shí)行增刪查改的操作,通過Controller層,將用戶和視圖的交互連接了起來,實(shí)現(xiàn)了系統(tǒng)與用戶的交互,滿足了用戶的需求。
結(jié)語
本文介紹了基于MVC設(shè)計(jì)模式的新聞發(fā)布系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)。在新聞發(fā)布系統(tǒng)中應(yīng)用MVC設(shè)計(jì)模式,使前端代碼和后端代碼分離,提高了代碼的重用率,進(jìn)而提高了系統(tǒng)的開發(fā)效率。同時(shí),由于MVC設(shè)計(jì)模式降低了模塊之間的耦合性,使系統(tǒng)結(jié)構(gòu)更加清晰,方便了后期的系統(tǒng)維護(hù)和升級。
參考文獻(xiàn):
[1]徐麗妹,何佳奕,田欣明.基于MVC設(shè)計(jì)模式的音樂監(jiān)測系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].藝術(shù)科技,2013(04):25+42.
[2]宮禹,蘇丹.MVC設(shè)計(jì)模式在Web開發(fā)中的研究與應(yīng)用[J].哈爾濱師范大學(xué)自然科學(xué)學(xué)報(bào),2015(04):62-64.
[3]丁晟春,王曰芬.網(wǎng)站新聞發(fā)布管理系統(tǒng)的設(shè)計(jì)與應(yīng)用[J].現(xiàn)代圖書情報(bào)技術(shù),2002(05):43-45+34.
[4]張式富,姜濤,吳效明.基于B/S的智慧社區(qū)健康監(jiān)護(hù)管理系統(tǒng)軟件的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)應(yīng)用與軟件,2014(03):4-6.
作者簡介:
宋相陽(1996-)男,漢族,河南省三門峽人,本科,研究方向:GIS系統(tǒng)設(shè)計(jì)與開發(fā)。
王曉紅(1982.5-),女,漢族,河北黃驊人,博士,講師,研究方向:基于3S的林業(yè)有害生物監(jiān)測與生態(tài)調(diào)控,GIS系統(tǒng)設(shè)計(jì)與開發(fā)。