999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

MVC架構下瀏覽器移動應用開發探討

2017-10-16 09:16:41周小軍
移動通信 2017年17期
關鍵詞:用戶功能系統

周小軍

(中國石油化工股份有限公司長嶺分公司,湖南 岳陽 414012)

MVC架構下瀏覽器移動應用開發探討

周小軍

(中國石油化工股份有限公司長嶺分公司,湖南 岳陽 414012)

為了給基礎設施管理系統增加移動功能,對MVC架構下瀏覽器移動應用的開發進行了探討。介紹了MVC體系結構和瀏覽器移動應用的原理,舉例說明了模型、控制器、視圖的設計和實現,顯示了運行效果,總結了開發方法,描述了應用場景,實踐后證明方案可行。

WebForm MVC 實體框架 jquery mobile 單一職責原則 狀態機 業務規則

1 引言

基礎設施管理系統是基于WebForm[1]構建的、使用事件驅動編程的應用網站,它集設備信息錄入、維護、審批、結算為一體,監控設備維護、更新、采購,保證了信息設備管理目標的實現。

眾所周知,計算架構模式正經歷著從瀏覽器/服務器模式,到移動/無線/云模式的演變,移動技術成為其中重要的組成部分。移動帶來巨大的商機,促進、改善了B2E、B2C等商業模式。移動應用為用戶帶來的價值體現在:實時信息收集、業務流程加速、信息價值放大[2]。

為了加速設施管理系統的維護、審批等流程,需要給系統增加移動功能。當前移動應用分為原生應用、基于瀏覽器的應用以及混合應用。基于瀏覽器的應用使用終端內置瀏覽器訪問系統網站,用戶無需安裝應用,應用開發成本低,維護方便,較具有競爭優勢。

本文從系統架構開始,到重構業務功能實現,探討為基礎設施管理系統增添基于瀏覽器的移動功能的過程。

2 系統架構

MVC[3](Model View Controller,模型-視圖-控制器)是一種軟件體系結構,它把業務數據、顯示界面的實現代碼分離,以控制器作為體系的核心,確保模型和視圖的同步。這種結構具有重用性高、耦合性低、可維護性高等優點,能極大減少開發時間,是大型應用開發的首選。對比于WebForm,MVC在視圖狀態管理、頁面生命周期、可測試性等方面有更強大的能力。

新增移動功能使用ASP.NET MVC 4項目下的移動應用程序模板開發。具體地,系統將基于視圖構建網頁,使用控制器驅動編程實現。

3 系統功能

由于設施管理系統功能很多,本文將以維護人員“申報PC機維護單”作為例子,闡述開發“申報PC機維護單”移動功能時要面對和解決的問題,最后進行方法上的歸納總結。

“申報PC機維護單”功能如下:維護人員根據PC機屬性選擇要維護的PC機,然后選擇維護項目,最后填寫維護說明、創建維護單。

4 設計與實現

4.1 關系映射

原系統功能通過菜單表的Url字段(如表1所示)進行訪問,它是HTTP鏈接,表示請求服務器上的Web文件,文件包含業務功能頁面。在MVC下,用戶訪問請求也是HTTP鏈接,但被映射成控制器下的Action方法調用。

為了確保用戶訪問業務功能的一致性,移動系統需要建立與原系統功能訪問鏈接間的對應關系,為此,菜單表保留Url字段,新增Ctrl字段,來表示在移動系統中對應的根控制器名稱。

表1 菜單表

4.2 模型設計

系統采用Database-First模型工作流程,使用實體框架[4]將數據庫表轉換成模型,圖1是PC機模型和PC機維護單模型:

圖1 PC機及維護單模型類

4.3 控制器設計

(1)根控制器

根控制器功能由多個實體子控制器實現,它按照所需的數據,依次調用子控制器的Action方式。“申報PC機維護單”功能對應repair_pc根控制器(如圖2所示),它調用PC子控制器的Search方式(圖3左)、PCItems子控制器的Create方式、PC_Paper子控制器的Create方式,圖2藍色下劃線表示子控制器方式參數:

圖2 申報PC機維護單控制器類

其中,RedirectToAction方法帶有3個參數,從左到右依次:actionName表示另一個控制器方式名,controllerName表示另一個控制器名,routeValues表示傳遞到另一個控制器方式的路由值,它是名/值對列表。通過這些參數,可以調用應用中其它的控制器方式,從而實現業務功能控制的流轉。為了返回原控制器方式,可以將原控制器和方式作為routeValues參數,供調用返回,圖2綠色下劃線表示返回到的控制器方式參數。

(2)實體控制器

實體控制器是對象模型,它的數據存于數據庫表,它對應的控制器負責數據的創建、查詢、更新、刪除,在需求分析階段實體已被識別。

利用PC子控制器的Search方式(圖3左),獲取視圖顯示需要的數據:從PC實體模型(圖1左)對應的數據表查詢所屬單位ejdws、操作系統czxts(圖3右),然后生成PC機選擇視圖pcSch。

圖3 PC子控制器和數據存取

4.4 視圖設計

MVC模式中,每個實體控制器的每種方式都會產生一個視圖。由于移動終端種類繁多,屏幕較小,設計界面時,應盡量減少界面元素數量和用戶輸入次數。移動應用程序模板默認自帶的jquery mobile[5]庫顯示視圖,jquery mobile是成熟、全面的前端框架,提供豐富的類似手機APP的組件,其官網上提供在線設計界面方案的功能,可以通過下載配置到自己的網站。

利用PC控制器的Search方式生成視圖:通過SelectList將所屬單位、操作系統綁定到下拉列表(圖4綠色下劃線)。其中,data-role屬性表明了界面元素的作用,如列表、字段組等,此外,其它data-*屬性可以用來設置theme方案、顏色、字體等樣式表風格。

圖4 選擇PC機視圖代碼

5 運行效果

根據功能設計,“申報PC機維護單”控制器將調用3個子實體控制器方式,會產生3個視圖界面(如圖5所示)。PC子控制器Search方式(圖3左)產生圖5中最左圖的效果,圖4是視圖代碼。

圖5 選擇PC機/選擇維護項目/創建維護單視圖

6 方法總結

在需求分析階段必須進行的任務有:

(1)遵循單一職責原則[6],將業務流程從用戶視角進行功能分解,弄清流程轉化的前件。

(2)對用戶或功能使用者按照角色劃分,建立用戶與所使用功能的對應關系。

(3)識別完成功能所需要的實體,分析實體狀態轉換,生成狀態機視圖。歸集多個相關實體的狀態集合,提煉出業務規則[7]。例如:如果維護單超過限定金額,并且審批通過,那么維護人員不能刪除維護單,也不能新增費用。

在MVC開發實現階段,總結經驗如下:

(1)在大規模系統中,查詢功能是最復雜的。查詢視圖要按照角色分別設計,因為不同角色對同一實體關注的方面不同,查詢條件也就不一樣了。例如:對于維護單,維護人員關心的是用戶和設備信息,而審批人員則關心維護費用的控制,所以要將信息按角色分組形成視圖,便于用戶使用,圖5左圖顯示有一般視圖和用戶視圖,由圖可見,系統用戶能很快找到自己需要設置信息的地方在哪里。

(2)業務規則的滿足與否決定了業務流程的走向,從而能夠動態選擇控制器的執行。控制器可以作為變量,進而更加靈活地驅動流程切換。將圖2中ResultUser方法展開,會看到業務規則代碼(圖6藍色下劃線):如果PC機有對應用戶,系統啟用“繼續”按鈕(圖8左圖);反之,系統提示“無責任人,不能創建維護單”,禁用“繼續”按鈕,流程終止,因為在后續流程中,維護單需要用戶確認。

圖6 業務規則驅動控制器選擇

7 應用場景

通過將原系統適配到移動系統,業務工作流按照角色展開。維護人員收到單位維護需求后,到現場進行維護作業,由于單位位置的分布性,維護人員每天要輾轉多處。通過使用移動設備,運維人員可在現場隨時登錄系統錄入相關數據,使數據得到迅速響應,提高精準度。維護人員不用像過去需要回辦公室后才能進行數據錄入,提高了工作效率,進而提升了整個業務工作流程的執行效率。圖7是維護人員查詢和錄入費用截圖:

圖7 基礎設施管理系統查詢和錄入費用界面

維護單審批包括時效審批和費用審批,分多層流轉,包括設備使用人、單位信息員、單位領導和科開處人員,通過移動管理系統,這些審批人即使出差在外地,也可以通過企業VPN,進入內部網絡,登錄系統進行審批工作。同時,系統對于超時或超標、超限費用的情況能夠進行及時提醒(如圖8所示),從而使工作流程向前推進,幫助企業節省時間和控制費用。

圖8 基礎設施管理系統費用超標、超限提醒

8 結束語

通過實踐表明,采用MVC體系架構,新增基于瀏覽器的移動應用功能是可行的。不但可以保證原有功能的一致性,并且可以根據業務流程,將功能分解成實體間的協同工作,能夠重復利用實體的各項功能,符合軟件工程學代碼復用的思想,是一種提升原有系統為移動應用系統的較好方式,有較廣泛的適用范圍。

未來還可以對系統進行功能拓展,將移動終端其他能力納入,例如:短信提醒,維護現場拍照上傳等,跨平臺移動框架(如PhoneGap、Cordova)可提供很好的接口訪問終端硬件功能。

[1] 劉春友,宋雅麗. 基于ASP.NET的WebForm與MVC開發模式的共用性研究[J]. 電腦編程技巧與維護, 2012(10):46-47.

[2] 移動信息化那些事. 企業移動應用的價值在哪兒[EB/OL]. (2014-06-13)[2017-07-15]. http://cio.zol.com.cn/460/4605730.html.

[3] Nick Harrison. ASP.NET MVC Succinctly[Z]. 2015.

[4] Julia Lerman, Rowan Miller. Programming Entity Framework: Code First[M]. Sebastopol: O’Reilly Media, Inc., 2011.

[5] Matt Doyle. Master Mobile Web Apps with jQuery Mobile[M]. Robertson: Elated Communications, 2014.

[6] 模式和實踐團隊. 微軟應用架構指南[M]. 朱曄,高翔,王敏,譯. 2版. 北京: 電子工業出版社, 2010.

[7] Cesar de la Torre, Unai Zorrilla, Miguel A Ramos, et al.N-Layered Domain-Oriented Architecture Guide with.NET 4.0[M]. Krasis Consulting, 2011. ★

Discussion on Mobile Application Development Based on Browser under MVC Architecture

ZHOU Xiaojun
(China Petroleum & Chemical Corp., Changling Branch, Yueyang 414012, China)

In order to add mobile functions to the management system of infrastructure, the development of mobile applications based on the browser under MVC architecture was discussed. The MVC system structure and the principles of mobile applications based on browser were introduced. The design and the implementation of the model, controller and view were illustrated. The run results were displayed, the developing method was summarized and the application scenario was depicted. The practice veri fi ed the feasibility of the solution.

WebForm MVC entity framework jquery mobile SRP state machine business rule

10.3969/j.issn.1006-1010.2017.17.011

TN929.5

A

1006-1010(2017)17-0055-05

周小軍. MVC架構下瀏覽器移動應用開發探討[J]. 移動通信, 2017,41(17): 55-59.

2017-08-01

責任編輯:文竹 liuwenzhu@mbcom.cn

周小軍:學士畢業于大連理工大學計算機軟件專業,現任中國石油化工股份有限公司長嶺分公司信息技術中心軟件工程師,從事軟件設計、網站開發工作,所開發應用系統多次獲得分公司科技進步獎。

猜你喜歡
用戶功能系統
也談詩的“功能”
中華詩詞(2022年6期)2022-12-31 06:41:24
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
關于非首都功能疏解的幾點思考
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
如何獲取一億海外用戶
創業家(2015年5期)2015-02-27 07:53:25
主站蜘蛛池模板: 高潮毛片无遮挡高清视频播放| 一级毛片免费高清视频| 丁香综合在线| 久久亚洲天堂| 日韩高清欧美| 欧美啪啪网| 日本一区二区三区精品国产| 国产在线拍偷自揄拍精品| 亚洲成aⅴ人在线观看| 免费可以看的无遮挡av无码| 精品国产一区91在线| 欧美成人第一页| 女同国产精品一区二区| 久久精品波多野结衣| 伊人久久大线影院首页| 欧美黑人欧美精品刺激| 国产不卡国语在线| 免费播放毛片| 久久精品视频亚洲| 国产精品偷伦在线观看| 青青草原国产| 乱系列中文字幕在线视频| 亚洲成A人V欧美综合| 亚洲人成影视在线观看| 三上悠亚精品二区在线观看| 四虎成人精品| 日本高清在线看免费观看| 一本视频精品中文字幕| 超清无码一区二区三区| 午夜欧美理论2019理论| 国产嫩草在线观看| 亚洲精品另类| 国产精品黑色丝袜的老师| 国产免费一级精品视频| 国产精品亚洲天堂| av大片在线无码免费| 国产精品刺激对白在线| 99re这里只有国产中文精品国产精品 | 日韩AV无码一区| 欧美黄色网站在线看| 亚洲天堂网2014| 久久亚洲国产最新网站| 欧美一级一级做性视频| 亚洲国产精品国自产拍A| 国产九九精品视频| 国产成人综合亚洲欧美在| 国产白浆一区二区三区视频在线| 一级片免费网站| 色香蕉网站| 中文字幕在线播放不卡| 国产av无码日韩av无码网站 | 东京热一区二区三区无码视频| 99色亚洲国产精品11p| 亚洲中文字幕日产无码2021| 一区二区自拍| 国产精品一线天| 韩日午夜在线资源一区二区| 国产永久免费视频m3u8| 69国产精品视频免费| 亚洲第一页在线观看| 韩国福利一区| 国产精品专区第一页在线观看| 亚洲精品视频免费观看| 欧美色视频日本| 精品撒尿视频一区二区三区| 少妇精品在线| 99久久这里只精品麻豆| 欧美va亚洲va香蕉在线| 在线日韩日本国产亚洲| 在线a网站| 国产91特黄特色A级毛片| 久草国产在线观看| 亚洲天堂视频在线观看免费| 国产综合网站| 幺女国产一级毛片| 国产精品亚洲专区一区| 91网红精品在线观看| 国产精品开放后亚洲| 国产九九精品视频| 日韩av电影一区二区三区四区| 欧美一级色视频| 一级毛片在线播放|