版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p> 中文6200字,3500單詞,1.8萬英文字符</p><p> 出處:Pop D P, Altar A. Designing an MVC Model for Rapid Web Application Development ☆[J]. Procedia Engineering, 2014, 69(1):1172-1179.</p><p> 為快速開發(fā)web
2、應用設計一個MVC模型</p><p> Dragos-Paul Pop*, Adam Altar</p><p> Procedia Engineering 69 ( 2014 ) 1172 – 1179</p><p> 羅馬尼亞美國大學,1B expozitiei大道,布加勒斯特,012101,羅馬尼亞</p><p>
3、<b> 摘要</b></p><p> 在本文中,我們提出了一個快速開發(fā)Web應用的模型。該模型是基于模型-視圖-控制器架構(MVC)和其他一些有用的組件,比如安全,表單生成和驗證,訪問數(shù)據(jù)庫和路由。這個模型是使用PHP編程語言實現(xiàn)的,但它可以使用同一設想在其他的開發(fā)語言和環(huán)境上實現(xiàn)。本研究的主要目標是使用正確的可維護的代碼提高開發(fā)和維護效率。</p><p>
4、 在DAAAM International Vienna的職責下選擇并且同行評審。</p><p> 關鍵詞:模型;視圖;控制器;MVC;Web應用;設計模式</p><p><b> 介紹</b></p><p> 自從萬維網的開始,web應用程序的發(fā)展已經走過了一段很長的歷程。各種各樣的技術和程序語言正在被用來開發(fā)web應用程序,但
5、是因為這些技術并沒有足夠的時間去隨著萬維網的進化而及時進化,無法應對萬維網的步伐。很多使用者嘗試提出不同的奇異的技術來提高用戶的體驗,并且?guī)椭_發(fā)者開發(fā)更快更強大的web應用程序。這些技術在web發(fā)展中扮演了一個重要的角色,但是在過去幾年里,他們的地位有了相當程度的下降,就像Java Applets和Microsoft Silverlight一樣。另一方面,許多技術已經從簡單的工具演變成了今天web生態(tài)系統(tǒng)強大的重要的一部分,比如,Ja
6、vascript,F(xiàn)lash和XML。</p><p> *通訊作者。電話:+ 40-724-261-805;</p><p> 電子郵件地址:pop.dragos.paul@profesor.rau.ro</p><p> 1877-7058©2014 The Authors。 由Elsevier公司出版。在CC BY-NC-N
7、D license許可下開放存取。</p><p> 在DAAAM International Vienna的職責下選擇并且同行評審。</p><p> doi: 10.1016/j.proeng.2014.03.106</p><p> 今天的web環(huán)境使用HTML和CSS將數(shù)據(jù)展現(xiàn)給用戶看,使用JavaScript來實現(xiàn)交互。這些技術被稱為“前端”或“客戶
8、端”技術。相反的,“后端”或者“服務端”技術是指數(shù)據(jù)存儲和處理技術。</p><p><b> 問題公式化</b></p><p> 一起使用前端技術和后端技術來開發(fā)web應用程序,但由于萬維網發(fā)展速度很快,由于開發(fā)人員需要使用很多技術來開發(fā)的卻僅僅是一個很簡單的web應用程序,這樣的結果就是,他們的程序經常是難以維護的。</p><p>
9、 開發(fā)者將HTML代碼和服務端程序語言結合起來創(chuàng)造一個動態(tài)的web頁面和應用程序,這會導致代碼高度耦合而難以維護。</p><p> 另一個已經產生的問題是,web技術正在越來越多地地被用來開發(fā)各種各樣的復雜的應用程序。Microsoft embraces web技術鼓勵開發(fā)者使用最新的操作系統(tǒng)Windows 8來開發(fā)應用程序。同時,很多現(xiàn)有的框架幫助開發(fā)者為移動設備開發(fā)應用程序,比如PhoneGap和App
10、celerator Titanium。甚至,一個手機操作系統(tǒng)正在被使用中,還有一個完全為了開發(fā)者提供API(火狐操作系統(tǒng))的使用web技術的設備即將在今年晚些時候出現(xiàn)。因為這些原因,一個web應用程序通常是由一整個團隊開發(fā)的,這個團隊里有各種開發(fā)者,每項工作使用的都是他們各自喜歡的技術,比如表現(xiàn)層的HTML和CSS,客戶端交互的JavaScript,服務器邏輯的PHP (或者ASP, Java, Python, Pearl, Ruby等
11、等)和數(shù)據(jù)存儲和管理的MySQL (或者Oracle Database, Microsoft SQL Server,等等)。</p><p> 每一個職能負責的開發(fā)人員,需要和他的同時協(xié)同合作,使用一種方式使得他們的代碼塊和整個應用程序的設計相融合。舉個例子,客戶端(數(shù)據(jù)顯示)開發(fā)人員需要使用一種方式,保證在修改HTML和CSS代碼的時候,不會破壞在同一文件中的服務端開發(fā)人員的代碼。同時,當數(shù)據(jù)庫開發(fā)人員修改應
12、用程序的數(shù)據(jù)時,服務端開發(fā)人員很可能需要修改很多代碼才能使得應用程序正常工作。</p><p> 需要注意的重要的事,在一個應用程序中,把表現(xiàn)層從邏輯和數(shù)據(jù)存儲當作分離出來是迫切需要的。</p><p> 很多應用程序設計了一些模式來解決這個問題,但最好的是當今的MVC模式。</p><p> 在這個研究過程中,我們使用各種系統(tǒng)和框架開發(fā)web應用程序來獲取經
13、驗,試圖去識別這些系統(tǒng)的優(yōu)點和缺點,同時對于如何提高這些系統(tǒng)的實際應用效率提出我們自己的看法。研究的框架和系統(tǒng)包括:Symfony, CakePHP, CodeIgniter Zend Framework, Laravel, Fuel PHP, Ruby on Rails and ASP.NET MVC。</p><p> MVC模式和文學概述</p><p> 在這一節(jié)中,我們將回顧
14、當前在這一領域的研究狀態(tài),并且,看看與MVC模式有關的描述了模式的主要功能組件的文獻資料。</p><p> MVC設計模式是由Trygve Reenskaug在1970年代在施樂帕洛阿爾托研究中心第一次提出的。根據(jù)他所說的,“MVC的基本目的是在用戶的心里模型和存在于計算機中的數(shù)據(jù)模型之間搭起一座橋梁[1]”。</p><p> 后來,1988年,在Krasner和Pope的文章《A
15、 cookbook for using the model-view controller user interface paradigm in Smalltalk-80》里,對MVC模式進行了更詳細的描述,該文章被發(fā)表在雜志《Object-Oriented Programming》上。</p><p> 他們強調,如果在頭腦里使用模塊化構建一個應用程序,那么將會有很大的益處?!氨M可能把各個功能模塊分離出來,使
16、應用程序設計人員更容易在不需要了解其他模塊的情況下,對自己的模塊進行理解和修改。[2]”</p><p> 一個應用程序被分為三大部分:主程序的模型,模型的數(shù)據(jù)顯示和用戶交互[2]。</p><p> MVC模式將職責分給三個主要角色,從而擁有更有效的協(xié)同合作[3]。這些主要的角色是開發(fā),設計和集成。</p><p> 開發(fā)的角色是由富有經驗的程序員擔任的,他
17、們的職責是應用程序的邏輯問題。他們關心數(shù)據(jù)查詢,驗證,處理以及其他更多的邏輯。</p><p> 設計的角色的的開發(fā)者的職責是負責應用程序的外觀和感覺。他們提供數(shù)據(jù)顯示給第一角色的開發(fā)人員。</p><p> 集成角色的職責是收集由擔任前兩種角色的開發(fā)人員的工作[3]。</p><p> MVC設計模式適合web應用程序開發(fā),因為他們通過結合多種技術將程序分層
18、開發(fā)。同時,MVC特定的行為可以在不同類型的用戶代理之間發(fā)送特定的視圖[13]。</p><p> “一個MVC應用程序的用戶交互遵循著一個自然周期:用戶發(fā)生動作,應用程序改變它的數(shù)據(jù)模型,然后返回一個更新視圖給用戶[4]?!?lt;/p><p> 圖1. MVC模式.</p><p> Source: http://stackoverflow.com/quest
19、ions/5966905/which-mvc-diagram-is-correct-web-app</p><p><b> 模型</b></p><p> 模型是系統(tǒng)的一部分,它會管理所以相關任務的數(shù)據(jù):驗證,會話狀態(tài)和控制,數(shù)據(jù)源結構(數(shù)據(jù)庫)。模型大大減少了開發(fā)人員需要編寫的代碼的復雜性[5]。</p><p> 模型層負責應用程序
20、的業(yè)務邏輯。它通過封裝的方法來訪問數(shù)據(jù)(數(shù)據(jù)庫,文件,等等),并提供一個可重用的類庫。通常,模型是基于抽象、驗證和認證的抽象數(shù)據(jù)建立的[4]。</p><p> 另外,模型是由類組成的,這些類定義了受關注的域[6]。</p><p> 結論就是,模型主要處理數(shù)據(jù)訪問的抽象和驗證。模型提供一些方法用于支持不同數(shù)據(jù)源之間的交互。</p><p> 我們相信,在瘦模
21、型方法中所說的,一個模型應該盡可能地簡單,只包含數(shù)據(jù)處理,那些完全與現(xiàn)實生活有關的模塊化的數(shù)據(jù)。瘦模型與胖控制器相聯(lián)系,其中存有應用程序所需的大部分的數(shù)據(jù)處理。通過這種方式,在應用程序和大部分在控制器上開發(fā)的程序員之間,模型保持了高度的可重用性。</p><p> 新奇的是,我們的模型系統(tǒng)帶給MVC世界的是一個用于版本控制的系統(tǒng),一個基于數(shù)據(jù)傳送的想法,除了數(shù)據(jù)本身,它不會持續(xù)關注數(shù)據(jù)的結構。這個系統(tǒng)使用XML
22、文件在數(shù)據(jù)傳送之間存儲數(shù)據(jù),這使得數(shù)據(jù)庫的版本控制過程成了一件容易完成的事。</p><p><b> 視圖</b></p><p> 視圖負責用戶的圖形界面管理。這包括了所有在應用程序中的表單、按鈕、圖形元素和其他HTML元素。視圖也可以被用來生成RSS內容聚合器或者Flash演示。通過將應用程序設計從應用程序的邏輯中分離出來,當設計人員決定更改應用程序的界面的
23、logo或者表格時,我們可以大大降低出錯的風險。與此同時,開發(fā)人員的工作量也大大減少了,因為他們不再需要去關注HTML代碼元素,不需要去設計元素和圖形元素[5]。</p><p> 視圖層通常也被稱為web設計或模版。它控制著數(shù)據(jù)被顯示的方式以及和用戶進行交互的方式。它還提供了從用戶處收集數(shù)據(jù)的方法。視圖中使用的技術主要有HTML,CSS和JavaScript[4]。</p><p>
24、 作為一般規(guī)則,一個視圖不能包含屬于應用程序邏輯部分的元素,以此來使得設計人員更容易來使用它工作。這意味著邏輯塊應該保持在最低限度。</p><p> 今天大多數(shù)web應用程序框架使用各種模版引擎,這些模版利用生成器元素可以保證HTML代碼的數(shù)量在最少,同時降低拼寫錯誤的風險。這些生成器通常用來制作一些復雜的web模版,比如表單,表格,列表,菜單等等。在這種情況下,我們確認的問題是,所有想法的實現(xiàn)都需要用到對開
25、發(fā)人員來說不透明的生成器模版。通過這種方式,一個前端開發(fā)人員只能看到在代碼被生成之后執(zhí)行的結果,而沒有任何方法去修改模版。我們的系統(tǒng)采用特殊的HTML注釋來插入和生成基于模版的部分HTML文件。預處理系統(tǒng)采用注釋來解釋特殊的命令,用來把數(shù)據(jù)插入模版。這使得整個對于前端開發(fā)人員來說都是很透明的,他們可以在繪制視圖之前看到整個標記。</p><p><b> 控制器</b></p>
26、<p> 控制器負責事件處理。這些由用戶觸發(fā)的事件,能夠和應用程序或者系統(tǒng)進程進行交互??刂破骺梢越邮苷埱?,可以準備數(shù)據(jù)來進行響應。它也負責建立響應的格式??刂破髋c模型進行交互,以此來檢索所需要的數(shù)據(jù)并且生成視圖。這個過程也被稱為一個動作或動詞[5]。當一個請到到達服務器,MVC框架會根據(jù)URL給它分配一個控制器中的方法[14]。</p><p> 控制器捆綁所有的應用程序邏輯,將視圖的顯示和模
27、型的函數(shù)相結合。它負責從視圖中檢索數(shù)據(jù),建立應用程序的執(zhí)行路徑??刂破髂軌蛟L問模型的函數(shù),并且它能夠接收數(shù)據(jù)使得在視圖中顯示。它也負責錯誤處理[4]。</p><p> 控制器管理視圖和模型之間的關系。它響應用戶的請求,與模型進行交互,并且決定哪個視圖應該被生成并顯示[6]。</p><p> 如上所述,我們接受胖控制器方法,相信所有特定的應用程序的數(shù)據(jù)處理應該在控制器層處理。<
28、/p><p> 為了請求和響應,我們的控制器系統(tǒng)會是一個架構樣式的網絡系統(tǒng),并且支持JSON(P),text和XML數(shù)據(jù)格式。</p><p><b> 數(shù)據(jù)庫抽象化</b></p><p> 使用對象來開發(fā)面向對象編程的應用程序。這些對象反映了現(xiàn)實生活中的對象,包含了對象的數(shù)據(jù)和行為。關系模型被廣泛應用于應用程序中的數(shù)據(jù)存儲,這些應用程序使
29、用表來存儲數(shù)據(jù),并且使用數(shù)據(jù)操縱語言來進行數(shù)據(jù)交互。一些數(shù)據(jù)庫管理系統(tǒng)擁有面向對象的特性,但它們并不是完全兼容的。很明顯的是,在從現(xiàn)在開始的很長一段時間里,這兩個架構會一直被廣泛地使用。此外,大部分時間,關系模型和面向對象編程是被用來一起開發(fā)應用程序。但這兩種技術的結合遠非完美?!皁bject-relational impedance mismatch”這個術語被用來說明上面所說的不匹配[7]。</p><p>
30、 在不匹配的背后存在的原因是,這兩種技術依賴于不同的思想。面向對象編程依賴于編程思想,而關系模型遵循的是數(shù)學原理。</p><p> 為了完全解決這個問題,對象-關系映射系統(tǒng)應運而生。</p><p> 圖2. ORM系統(tǒng).</p><p> Source:http://danhartshorn.com/2011/12/object-relational-m
31、apping-wikipedia-the-free-encyclopedia</p><p> 一個對象關系映射系統(tǒng)(ORM)被定義為一種工具,它提供一個面向對象的方法和機制以安全的方式來存儲數(shù)據(jù),并且在數(shù)據(jù)庫中的很長一段時間里,能夠通過事務控制它們,但需要說明的是,如果需要,它也可以作為應用程序內部中的對象[8]。</p><p> ORM系統(tǒng)減少了開發(fā)人員對了解數(shù)據(jù)庫結構或數(shù)據(jù)庫模
32、式的擔心[9]。</p><p> 總之,我們可以說,對象關系-映射系統(tǒng)是一種把編程語言中的類和關系系統(tǒng)中的數(shù)據(jù)相關聯(lián)的方式,它允許開發(fā)人員使用眾所周知的思想來進行開發(fā),即從面向對象編程來管理關系系統(tǒng)中的數(shù)據(jù)。</p><p> MVC平臺必須為開發(fā)人員提供一個方法與數(shù)據(jù)庫管理系統(tǒng)進行數(shù)據(jù)交互,進行數(shù)據(jù)存儲和數(shù)據(jù)檢索。大多數(shù)時候,這是一個集成的ORM系統(tǒng)。</p><
33、;p> 因為在MVC架構中,模型是與數(shù)據(jù)交互的一層,ORM系統(tǒng)隱藏在其之后?;旧?,每個模型連接到ORM系統(tǒng)后,它都會使用該系統(tǒng)進行數(shù)據(jù)交互。但是開發(fā)人員可能不需要通過模型來訪問ORM系統(tǒng)的資源。</p><p> 我們的ORM系統(tǒng)支持在對象和最長的對象鏈之間的多對多關系。</p><p> 同時,我們提供一個選項來確保內存中保存有確定的數(shù)據(jù)集,并且,跳過數(shù)據(jù)查詢步驟,以此將響
34、應時間減少到最低限度。</p><p> 目前,NoSQL數(shù)據(jù)存儲是被重視的,我們支持一個接口來訪問這些系統(tǒng)。這個接口是ORM系統(tǒng)的一部分。</p><p><b> 安全</b></p><p> Web應用程序漏洞是用戶的業(yè)務環(huán)境會受到攻擊的主要原因[10]。</p><p> 開發(fā)人員在開發(fā)web應用程序的
35、時候需要注意很多地方。</p><p> 安全風險可以分為幾類[11]:</p><p> 用戶輸入驗證:緩沖區(qū)溢出,跨站腳本,SQL注入,規(guī)范化;</p><p> 認證:網絡監(jiān)聽,暴力攻擊,字典攻擊,cookie偽裝,身份盜用;</p><p> 授權:訪問特權擾亂,私人數(shù)據(jù)顯示,數(shù)據(jù)修改,跟蹤攻擊;</p><
36、;p> 配置管理:對管理界面未經授權的訪問,對配置空間未經授權的訪問,對存儲為文本的控制數(shù)據(jù)的訪問,操作日志的缺少;</p><p> 信息:訪問數(shù)據(jù)庫中的數(shù)據(jù),網絡監(jiān)聽,數(shù)據(jù)修改;</p><p> 會話管理:會話盜竊,會話改變,中間人攻擊;</p><p> 加密:薄弱的安全密鑰,薄弱的加密;</p><p> 參數(shù)處理:
37、查詢字符串,表單字段,cookie和HTTP頭處理;</p><p> 異常管理:DOS攻擊;</p><p> 開發(fā)人員需要抵御這些各種類型的攻擊,并且保證MVC架構的每一層的安全性。</p><p> 我們的系統(tǒng)提議建立在CSRF攻擊預防之上,一個簡單的身份驗證模式,一個復雜的基于安全系統(tǒng)和對資源高度可定制的訪問控制表的角色。</p><
38、;p><b> 路由</b></p><p> HTTP協(xié)議處理URL書寫的方式與Unix環(huán)境中資源路徑被書寫的方式很相似[12]。</p><p> Web服務器支撐在分層文件系統(tǒng)中隱式地查詢數(shù)據(jù)。</p><p> 通過這種方式訪問資源是相對容易的、直觀的,但是隨著web應用程序變得更復雜,我們需要更好的系統(tǒng)的產生。為了解決這
39、個問題,我們可以用一種方法來配置web服務器和開發(fā)框架,這種方法使用獨一無二的方式來說明結果、訪問資源。</p><p> 這些系統(tǒng)被稱為URL映射或URL路由系統(tǒng)。這項技術也被稱為URL美化,它幫助開發(fā)人員開發(fā)命令和精密的URLs數(shù)據(jù),使得用戶和搜索引擎能夠更好地處理它們。</p><p> 我們的系統(tǒng)是基于“控制器/動作/參數(shù)”范式建立的,但是它也允許開發(fā)人員配置他們自己的靜態(tài)路由
40、。</p><p> 訪問控制在路由層,這是為了減少不必要的處理時間。</p><p><b> 快速原型</b></p><p> 在web應用程序開發(fā)的世界里,很多應用程序似乎被多次使用。舉個例子,web表單就是個經常被使用的工具,表格和列表也同樣如此。但總是從零開始開發(fā)它們是很困難的,因為它的實現(xiàn)需要編寫很多復雜的代碼。</p
41、><p> 每個系統(tǒng)都能受益于快速原型組件,快速原型組件不僅可以快速生成這些工具,還能為表單的數(shù)據(jù)驗證提供方法。</p><p> 當這些工具和ORM系統(tǒng)相結合,用很少的幾行代碼為基礎開發(fā)一個CRUD系統(tǒng),這確實是很有用的。</p><p> 如上所述的觀點,我們的系統(tǒng)是基于一個靈活的完全透明的模版引擎,這使得前端和后端開發(fā)人員共同受益。</p>&
42、lt;p><b> 系統(tǒng)方案概述</b></p><p> 我們的平臺方案用一個簡單的包將以上所述的所有方面統(tǒng)一了起來,這個包是強大且易于使用和維護的。</p><p> 上述結構描述如下。數(shù)據(jù)源可以是任何類型的數(shù)據(jù)庫。ORM系統(tǒng)是一個專門為最著名的數(shù)據(jù)庫管理系統(tǒng)開發(fā)的類的集合。一個主要的類為被使用的DBMS中一般類型的表提供基本的映射,關系和管理。關系應
43、該被映射成一種允許使用面向對象的方式來獲取相關的數(shù)據(jù),而不是由開發(fā)人員編寫復雜的查詢代碼。預先加載和延遲加載都應該被考慮到。</p><p> 模型被構建成一個ORM主類的子類,這個類繼承自主類。此外,模型有很多獨一無二的功能,這些功能將現(xiàn)實生活中的對象模型化。</p><p> 控制器是一個用于處理模型查詢,訪問安全以及路由解析的基類??刂破鞅粯嫿ǔ苫A控制器的子類,繼承它的功能函數(shù)
44、,并且有與應用程序邏輯相關的所使用到的行為。</p><p> 快速原型系統(tǒng)是一組類的集合,這些類允許開發(fā)人員去開發(fā)復雜的HTML對象,比如表單,表格,而不需要編寫HTML代碼。表達應該提供數(shù)據(jù)驗證功能,表格則應該實現(xiàn)排序和嵌套。快速原型系統(tǒng)應該提供類DOM操作功能來訪問數(shù)據(jù)。</p><p> 圖 3. MVC結構概述.</p><p> 視圖是一個包含所有
45、顯示邏輯的基類。視圖被構建成主類的子類,應該跟特殊的行為和控制器綁定。為了性能原因,視圖應該被預渲染,應該支持緩存。為了代碼重用,視圖系統(tǒng)依賴于模版系統(tǒng)和局部模版系統(tǒng)。</p><p><b> 結論</b></p><p> 基于上述的概述,我們建立一個堅實的框架,能夠大幅減少web應用程序開發(fā)所用的時間,能夠讓開發(fā)人員專注于應用程序特定功能的開發(fā),而不是浪費時
46、間在嘗試實現(xiàn)眾所周知的模式和實踐上。</p><p> Web技術在很短的時間里走過了相當長的路程,web應用程序的市場也在不斷壯大。我們的系統(tǒng)能夠幫助開發(fā)人員提高他們的工作速度和質量,為初學者和有經驗的用戶提供一個不錯的工作框架和平臺。</p><p> 我們已經開發(fā)了很多使用平臺提供的表單組件的應用程序,這些應用程序顯示出我們正在開發(fā)的系統(tǒng)正處于正確的軌道,同時,告訴我們一個有價值
47、的信息就是,仍然有待提高。</p><p><b> 深入研究</b></p><p> 在這一領域,我們未來研究的重點是,提高對各種NoSQL系統(tǒng)的可用的支持,因為我們認為這個領域將會是未來IT界最有前景的領域。同時,我們的目標是通過合并數(shù)據(jù)和視圖的緩存技術來提高渲染引擎的速度。</p><p> 另外重要的一步,就是創(chuàng)建開源社區(qū)項目,
48、以此來開發(fā)更多的測試用例的應用程序,來生成有效的結果。這些結果將被用來進一步優(yōu)化平臺。同時,我們的目標是通過開源社區(qū)支持包的開發(fā),以此來進一步擴展平臺。</p><p><b> 致謝</b></p><p> 這份資料是由the European Social Fund通過Sectorial Operational Program Human Resources
49、 Development 2007-2013資助的,項目POSDRU/107/1.5/S/77213和POSDRU/88/1.2/S/55287,從事于基于歐洲標準的跨領域的經濟研究的博士。</p><p><b> 參考文獻</b></p><p> [1] Trygve Reenska, http:// heim.ifi.uio.no / ~trygver/t
50、hemes/mvc/mvc-index.html.</p><p> [2] Glenn E. Krasner, Stephen T. Pope, “A cookbook for using the model-view controller user interface paradigm in Smalltalk-80”, Journal of</p><p> Object-Ori
51、ented Programming, vol. 1, no. 3, 1988, pp. 26-49.</p><p> [3] Kevin McArthur, Pro PHP: Patterns, Frameworks, Testing and More, Apress, 2008.</p><p> [4] A Freeman, S Sanderson, Pro ASP.NET MV
52、C 3 Framework, Apress, 2011.</p><p> [5] W. J. Gilmore, Easy PHP Websites, Columbus, Ohio: W.J. Gilmore, LLC, 2009.</p><p> [6] J. Galloway, P. Haack, B. Wilson ?i K. S. Allen, Professional AS
53、P.NET MVC 3, John Wiley & Sons, Inc., 2011.</p><p> [7] http://www.agiledata.org/essays/impedanceMismatch.html</p><p> [8] E. J. O'Neil, Object/relational mapping 2008: hibernate and t
54、he entity data model (edm), Proceedings of the 2008 ACM SIGMOD</p><p> international conference on Management of data</p><p> [9] J. Lerman, Programming Entity Framework, O’Reilly, 2010.</p
55、><p> [10] http://www.rapid7.com/solutions/technology/web-application-security.jsp</p><p> [11] J.D. Meier, Alex Mackman, Michael Dunner, Srinath Vasireddy, Ray Escamilla and Anandha Murukan, Imp
56、roving Web Application</p><p> Security: Threats and Countermeasures, Microsoft Press, Iunie 2003.</p><p> [12] http://www.w3.org/People/Berners-Lee/FAQ.html#etc</p><p> [13] Bad
57、urowicz, M, “Mvc Architectural Pattern In Mobile Web-Applications”, Actual Problems Of Economics, 2011, pp.305-309.</p><p> [14] Stratmann, E., & Ousterhout, J.,“Integrating Long Polling with an MVC Web
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2014年--軟件工程外文翻譯--為快速開發(fā)web應用設計一個MVC模型(譯文).doc
- 2014年--軟件工程外文翻譯--為快速開發(fā)web應用設計一個MVC模型(譯文).doc
- 2014年--軟件工程外文翻譯--為快速開發(fā)web應用設計一個mvc模型
- 2014年--軟件工程外文翻譯--為快速開發(fā)web應用設計一個mvc模型(原文)
- 2014年--軟件工程外文翻譯--為快速開發(fā)web應用設計一個MVC模型(原文).pdf
- 2014年--軟件工程外文翻譯--為快速開發(fā)web應用設計一個MVC模型(原文).pdf
- [雙語翻譯]--軟件工程外文翻譯--為快速開發(fā)web應用設計一個mvc模型
- 2014年--計算機軟件工程外文翻譯--為快速開發(fā)web應用設計一個mvc模型
- [雙語翻譯]--計算機軟件工程外文翻譯--為快速開發(fā)web應用設計一個mvc模型
- 2011年--軟件工程外文翻譯--一個實用的日歷系統(tǒng)結合反復任務的模糊模式(譯文)
- (節(jié)選)2014年--外文翻譯--電池模型設計一個高級多功能的電池管理系統(tǒng)(譯文)
- 2015年--軟件工程外文翻譯--使用數(shù)據(jù)服務來構建一個開放數(shù)據(jù)的可視化網絡應用(譯文).doc
- 2011年--軟件工程外文翻譯--一個實用的日歷系統(tǒng)結合反復任務的模糊模式(譯文).docx
- 2011年--軟件工程外文翻譯--一個實用的日歷系統(tǒng)結合反復任務的模糊模式(譯文).docx
- 開源框架spring快速開發(fā)j2ee web應用一個案例研究-外文翻譯
- (節(jié)選)2014年--外文翻譯--電池模型:設計一個高級多功能的電池管理系統(tǒng)(譯文).docx
- 軟件工程外文翻譯--python一個免費的開源軟件生態(tài)系統(tǒng)的特征識別
- 軟件工程外文翻譯--python一個免費的開源軟件生態(tài)系統(tǒng)的特征識別
- 軟件工程外文翻譯--python一個免費的開源軟件生態(tài)系統(tǒng)的特征識別
- 外文翻譯-軟件工程
評論
0/150
提交評論