董金穎
摘要:隨著面向?qū)ο蠹夹g的發(fā)展,MVC的含義和用途變得更加廣泛,本文討論了 MVC模式的結構、設計方法,并通過MVC框架技術的開發(fā)企業(yè)“多元”培訓信息化平臺應用實例,簡述MVC框架的實現(xiàn)技術和優(yōu)缺點。通過對上述內(nèi)容的研究,深化對該系統(tǒng)的認識,推進該系統(tǒng)的順利應用,提升企業(yè)員工培訓質(zhì)量及效率,降低員工培訓成本。
關鍵詞:MVC框架 設計模式 信息平臺
中圖分類號:TP311 文獻標識碼:A 文章編號:1007-9416(2016)09-0165-01
近年來,企業(yè)級應用系統(tǒng)大多由C/S向B/S開發(fā)模式轉移,并且早起的WEB開發(fā)技術將業(yè)務處理邏輯和用戶界面交叉在一起耦合度較高,已經(jīng)不能很好的勝任目前大用戶、大數(shù)據(jù)、高度高效的應用需求。MVC框架結構設計典范,用一種業(yè)務邏輯、數(shù)據(jù)、界面顯示分離的方法組織代碼,將業(yè)務邏輯聚集到一個部件里面,在改進和個性化定制界面及用戶交互的同時,不需要重新編寫業(yè)務邏輯,解決系統(tǒng)耦合和代碼更改頻繁的問題。
1 MVC框架結構
MVC是一種使用MVC(Model View Controller模型-視圖-控制器)設計創(chuàng)建Web應用程序的模式,即把一個應用的輸入、處理、輸出流程按照Model、View、Controller的方式進行分離,這樣一個應用被分成三個層——模型層、視圖層、控制層。
模型Model是軟件內(nèi)在的抽象類,是包含了核心數(shù)據(jù)結構和邏輯功能的模型,他與系統(tǒng)前臺相對獨立。視圖View是模型的外在表現(xiàn),他從模型是獲得數(shù)據(jù)信息,并且展現(xiàn)在系統(tǒng)前臺??刂破鰿ontroller是開發(fā)人員用來定義界面對用戶輸入的響應方式,他負責對模型中任何變化加以控制,確保用戶視圖和模型之間的對應關系,協(xié)調(diào)著模型和視圖的工作。
2 系統(tǒng)技術設計
原培訓系統(tǒng)由Delphi7和SQL Server開發(fā),為C/S模式,必須在同一VLAN段內(nèi)使用,兼容多個生產(chǎn)系統(tǒng)。為提高培訓效率,開發(fā)新的培訓模式,設計采用基于MVC框架對原有培訓系統(tǒng)升級,以原有系統(tǒng)為業(yè)務原型,由C/S轉為B/S,數(shù)據(jù)庫采用Oracle,開發(fā)統(tǒng)一數(shù)據(jù)接口獲取其他生產(chǎn)系統(tǒng)數(shù)據(jù),增強系統(tǒng)的維護性和可擴展性。
系統(tǒng)采用MVC架構,需要配置WEB服務器、數(shù)據(jù)庫服務器,可以看做是三層架構的B/S系統(tǒng),但MVC的框架和原三層架構有一定區(qū)別,通常所說的業(yè)務邏輯層及是模塊Model,而UI層就是MVC的視圖View,但是MVC提供了讓模型和視圖相分離的思路,引入了控制器這個概念,把頁面跳轉關系管理、表單數(shù)據(jù)的封裝及驗證、國際化等任務交給控制器處理,MVC框架實現(xiàn)了UI層和業(yè)務邏輯層最大程度的分離,也就是降低的耦合度。
3 在線職工技能培訓平臺的設計
3.1 在線職工技能培訓平臺的功能
(1)自主學習功能:包括題庫的管理,自主學習功能,模擬考試功能,隨記抽題,答案順序隨機,自動判卷等。
(2)技能實作平臺:與生產(chǎn)系統(tǒng)和日常操作系統(tǒng)對接,完全模擬職工日常工作內(nèi)容。
(3)視頻點播功能:職工根據(jù)需求選擇需要學習的視頻課程,隨時可以獲得學習服務。
3.2 數(shù)據(jù)庫考試題自動組卷模塊
在Oracle數(shù)據(jù)庫中存儲基礎題庫,根據(jù)管理后臺所設置的例如分值、題目數(shù)等參數(shù),通過數(shù)據(jù)庫存儲過程和包Packages,從原始題庫中隨機抽取相關題目組成一套考試試卷,并將原來的題目順序、答案順序完全打亂??荚嚪绞筋愃朴隈{校理論筆試的模式。
3.3 統(tǒng)一數(shù)據(jù)接口
由于企業(yè)培訓業(yè)務是包括所有物流和生產(chǎn)鏈的環(huán)節(jié),職工日常工作使用多個信息系統(tǒng),操作界面和數(shù)據(jù)存儲方式均不一樣。為提高測評效率,減少多系統(tǒng)間切換根據(jù)需要,所以建立了通用接口數(shù)據(jù)橋。打通與SQL Server、MySQL系統(tǒng)數(shù)據(jù)庫的連接,將不同類型的數(shù)據(jù)源轉換到專用數(shù)據(jù)庫中,為培訓系統(tǒng)提供基礎支撐。
4 MVC框架的優(yōu)缺點
4.1 MVC框架的優(yōu)點
(1)對系統(tǒng)應用層進行分層,使軟件代碼層次結構清晰,有多個視圖對應一個模型的功能,減少代碼的復制量,更減少了后期維護工作。一旦根據(jù)用戶需求發(fā)生了模型的改變,由于模型返回的數(shù)據(jù)不帶任何顯示格式,因而這些模型也可直接應用于接口的使用。
(2)模型具備可移植性,模型是獨立于視圖,所以可以把一個模型獨立地移植到新的平臺工作。需要做的只是在新平臺上對視圖和控制器進行新的修改。
(3)整體框架松耦合,視圖層和業(yè)務層分離,這樣就允許更改視圖層代碼而不用重新編譯模型和控制器代碼,改動其中一部分,不會影響到其他部分。
4.2 MVC框架的缺點
(1)MVC框架內(nèi)部原理比較復雜,沒有明確的規(guī)范定義,增加了系統(tǒng)結構和實現(xiàn)的復雜性,同時由于模型和視圖要嚴格的分離,這樣也給調(diào)試應用程序帶來了一定的困難。每個構件在使用之前都需要經(jīng)過徹底的測試,經(jīng)常由于培訓系統(tǒng)前臺視圖的一點更改,無法通過控制器正確提取后臺的模型。
(2)MVC框架不適用中小型軟件開發(fā),根據(jù)開發(fā)者經(jīng)驗,在開發(fā)培訓系統(tǒng)時,由于開發(fā)者將一個應用程序分成了三個部件,對于簡單的界面也需要建立完整的模型,造成了過度的框架性文件,增加了代碼的復雜度,降低了代碼的可讀性。
參考文獻
[1]施笑南.淺談互聯(lián)網(wǎng)+技術經(jīng)紀人在線培訓系統(tǒng)設立的意義[J].經(jīng)濟,2015(10):19-19.
[2]邵繼岑.企業(yè)在線培訓常見問題與解決策略初探[J].科研,2015(49):308-308.