MVC在WebE的對應 (轉)
一年前學習中的一段體會,現在仍可回味。
發信人: (海曦), 信區: Develop 標 題: Re: MVC在WebE的對應發信站: 飲水思源 (2002年07月11日19:19:49 星期四), 站內信件 今天繼續看了一下,又有一些新的發現。 【 在 HAX (海曦) 的大作中提到: 】 : 今天看了很久以前down下來的一篇文章: : s and the Web : Alan Knight, Naci Dai (這個名字好像中文名字啊!) : 其中提到Web分層構架是4層: : Input 對應於 M的 input controller : Application logic 對應於 application controller : Business logic 對應於 model : Presentation 對應於 view 傳統MVC起源於smalltalk這種語言,用於開發。但是我們對smalltalk 不瞭解,很多對方也對MVC想當然,而且有絕對化(神化)MVC的傾向,但是今天重新看了一下Objects and the Web文章裡的圖,據說MVC中的 Controller原來只是控制Keyboard、Mouse的,也就是說只是Input Controller,而且Web上的Input Controller的顯然不是Keyboard之類而是HTTP的Request (所以好像看到有熟悉smalltalk的同志抱怨此MVC與stucts實現的MVC不同)…… 而且更重要的是原始的MVC中並沒有顯然的區分Application logic 和 Business logic!仔細想想也是,Smalltalk就是學院式,恐怕沒有 的概念。 請問諸位同志在學習程式設計的時候有意識的區分Application logic和 business logic嗎?我猜想達不到大量複用和構建複雜應用的需求時,不會有自覺的Application logic和Business logic的劃分吧! : 俺覺得以前好象對這個對應沒有搞得很清楚。主要的問題是 : 對於Application logic跟Business logic有些混淆。因為 : 還有content-logic-style的分法。事實上現在明白了,複雜的 : style還包括presentation logic,而content-logic的分法是 : 與model-controller的分法有差異的。因為對於傳統web來說 : 它只有人可以理解的content沒有設計model!當然這個判斷不 : 是絕對的。因為content(data)既然成為獨立的層,好歹會有 : 一些model,但這個model通常不是像MVC中那樣是OO的,一般 : 可能僅僅是結構化和半結構化資料,或者是像ER model。顯然 : 如果是這種情況,business logic就不能被封裝到物件自身, : 於是就容易與controller(application logic)混淆起來! 這裡有點沒有說清楚,content-logic和model-controller是有不同,但是有類似的問題。前者的問題是application logic和business logic 混入logic層(我判斷原因是content缺乏oo的表達),後者的問題是 application logic和business logic混入model層(或者毋寧說是還沒有application和business的分層需要)。 : 可是有個疑問,web的content不選擇oo model,就一定是錯的嗎? : MVC的分層一定適合於WebE嗎?我雖然還沒有答案,但我傾向於 : Web上需要應用的是一種非傳統OO(如RDF)的model。 最後的意思是oo好像也具有封閉性……但是這個想法還很不清晰。 歡迎大家討論。 -- 做缺少資產,做應用缺少溝通,做資訊缺少分類,做工程缺少規範,做管理缺少制度,做團隊缺少組織…… ※ 來源:·飲水思源 bbs.sjtu.edu.cn·[FROM: 202.120.15.34]
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10748419/viewspace-958708/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 玩轉spring boot——MVC應用Spring BootMVC
- AutoMapper在MVC中的運用05-對映中的忽略、處理null、多種對映轉換APPMVCNull
- MVC模式在Java Web應用程式中的實現MVC模式JavaWeb
- AutoMapper在MVC中的運用02-Decimal轉String、集合、子父類對映APPMVCDecimal
- MVC框架的對映和解耦MVC框架解耦
- MVC、MVP、MVVM,談談我對Android應用架構的理解MVCMVPMVVMAndroid應用架構
- AutoMapper在.Net(asp.net MVC)專案下的應用以及IDataReader轉List說明APPASP.NETMVC
- sqlserver在JAVA中的應用 (轉)SQLServerJava
- 在Docker容器中執行ASP.NET MVC應用程式DockerASP.NETMVC
- 關於openssl應用的對話 (轉)
- Red hat公司對Oracle的回應(轉)Oracle
- StarRocks在支付對賬領域的應用
- AutoMapper在MVC中的運用07-對映在訂單場景的例子APPMVC
- 聊聊對稱/非對稱加密在HTTPS中的應用加密HTTP
- 談談對MVC、MVP和MVVM的理解?MVCMVPMVVM
- ASP.NET MVC - PageData的應用ASP.NETMVC
- Spring MVC應用SpringMVC
- ASP.NET MVC應用程式把文字寫在圖片上ASP.NETMVC
- MVC模式的PHP實現(3) (轉)MVC模式PHP
- 在MVC中配置鑑權MVC
- 在java中實現對FORM的列印功能 (轉)JavaORM
- 對BOT在我國實施的法律思考(轉)
- ERP在企業中的應用(轉)
- MRPII在製造業的應用(轉)
- XML 在 ASP 環境下的應用(轉)XML
- 架構師對MVC設計模式的理解架構MVC設計模式
- 對MRP II系統在中國企業應用現狀的調研與思考(轉)
- WebAPI在MVC4下的調整(4)WebAPIMVC
- Spring的web MVC 構架模式 (轉)SpringWebMVC模式
- 在ASP.NET MVC應用程式中隨機獲取一個字串ASP.NETMVC隨機字串
- ERP系統在我國的應用(轉)
- Java在Client/Server網路中的應用 (轉)JavaclientServer
- 介面在託管C++中的應用 (轉)C++
- Vector在Java程式設計中的應用 (轉)Java程式設計
- 專案管理在企業中的應用(轉)專案管理
- 針對Spring MVC的Interceptor記憶體馬SpringMVC記憶體
- 【Java面試】說說你對Spring MVC的理解Java面試SpringMVC
- Spring MVC 中檢視的實現原理,在Spring MVC 中實現重定向和轉發,以及訪問靜態資源SpringMVC