• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            woaidongmao

            文章均收錄自他人博客,但不喜標(biāo)題前加-[轉(zhuǎn)貼],因其丑陋,見諒!~
            隨筆 - 1469, 文章 - 0, 評(píng)論 - 661, 引用 - 0
            數(shù)據(jù)加載中……

            為什么主流Java MVC框架如此難以使用

            使用J2EE Web開發(fā)已經(jīng)好幾年了,從JSPStrutsWebWork到現(xiàn)在的Struts 2Wicket,沒有一個(gè)用起來簡(jiǎn)單順手的。

            無論哪個(gè)框架吹噓自己有多么簡(jiǎn)單和高效的生產(chǎn)力,甚至讓一個(gè)從未接觸過Web開發(fā)的人5分鐘能上手,絕對(duì)是騙人的。照著教程做一個(gè)Hello World還可以,一旦網(wǎng)站規(guī)模一大,根本無法維護(hù)。

            再深入挖掘一下,你會(huì)發(fā)現(xiàn),其實(shí)一個(gè)MVC框架無論服務(wù)器端設(shè)計(jì)有多么差,其實(shí)也差不到哪去,有面向?qū)ο蠼?jīng)驗(yàn)的開發(fā)人員都可以寫出比較能維護(hù)的代碼,即便像Struts這種比較古老的框架,服務(wù)器端開發(fā)也不難,和WebWork2比僅僅是不方便而已。

            但是到了View這一層就五花八門了,總體來說,有以下幾路主流門派:

            1. Struts為代表的JSP + Tag派,真叫一個(gè)難用,尤其是Tag,不但要查手冊(cè),你還必須寫出if equals ... else的邏輯來。

            2. JSF為代表的全Tag派,基本上寫一個(gè)JSP和一個(gè)XML沒啥區(qū)別,都是Tag堆出來的,甚至變態(tài)到HTML元素都給Tag了,比如<h:div>

            3. Wicket為代表的嵌入式派,可以通過<span wicket:id="message" id="message">來搞定,不破壞HTML,不過通過Filter過濾性能值得懷疑。

            無論哪種MVC框架,目的都是要簡(jiǎn)化View的開發(fā),然而在實(shí)際使用時(shí)卻發(fā)現(xiàn),簡(jiǎn)化了簡(jiǎn)單的頁面,復(fù)雜頁面卻變得更復(fù)雜了,因?yàn)檫@些MVC框架都普遍忽視了一個(gè)基本原理:現(xiàn)代Web技術(shù)是建立在HTML+CSS+JavaScript基礎(chǔ)上的,任何試圖幫助Java開發(fā)者隱藏HTMLCSSJavaScript的努力最終都將阻礙Web開發(fā)。不會(huì)HTML,不會(huì)CSS,不會(huì)JavaScript,那就不要做Web開發(fā),無論你多么精通Java

            正是由于這些MVC框架有意無意地讓Java開發(fā)人員遠(yuǎn)離HTML,才造成了View開發(fā)的困難重重。尤其以JSF為代表,性能就不說了,要添加JavaScript你只能先看編譯后的HTML源碼,要修改CSSDEBUG至少N次,所有的可視化HTML編輯器都用不了。

            所以,要真正提高Web開發(fā)的生產(chǎn)力,尤其是頁面的可維護(hù)性,Web頁面必須由精通HTML+CSS+JavaScript的開發(fā)人員完成,服務(wù)器端技術(shù)對(duì)這些的侵入性越小,頁面越容易維護(hù)。目前我認(rèn)為比較好的View框架還是VelocityFreeMarker,通過<div>${message}</div>JSP Tag強(qiáng)很多,結(jié)合HTML可視化編輯器(主要指Dreamwaver),調(diào)試起來非常方便,而且不用重啟服務(wù)器。至于服務(wù)器端,其實(shí)各MVC大同小異,我一直使用Spring MVC+Velocity,少集成一個(gè)框架畢竟麻煩少一些。

            gangban_lau 發(fā)表于2009625 17:10:33  IP:舉報(bào)

            在分工日益精細(xì)的今天,讓Java開發(fā)人員遠(yuǎn)離HTML,也許體現(xiàn)了他們的用意。讓精通 HTML CSS JavaScript 的人員做 ViewJava 程序員在自己該做的事情。

            yufei_lgq 發(fā)表于2009625 17:53:02  IP:舉報(bào)

            任何試圖幫助Java開發(fā)者隱藏HTMLCSSJavaScript的努力最終都將阻礙Web開發(fā)。不會(huì)HTML,不會(huì)CSS,不會(huì)JavaScript,那就不要做Web開發(fā) 有同感。在使用中我一般都不使用htmltag,我覺得這些tag畫蛇添足。

            lakesea 發(fā)表于2009625 18:06:02  IP:舉報(bào)

            相當(dāng)有同感,現(xiàn)在的web開發(fā)特別是java體系的,總是在強(qiáng)調(diào)新技術(shù),框架,模式等,在開發(fā)效率等方面完全不能和傳統(tǒng)cs程序相比,所以我們目前在嘗試做一些類似cs的控件這是實(shí)際項(xiàng)目中應(yīng)用的效果: http://blog.csdn.net/lakesea/archive/2009/03/17/3999514.aspx

            tsun7263 發(fā)表于2009625 20:34:31  IP:舉報(bào)

            同感,用一些tag之后,會(huì)使頁面不可控,尤其是做一些復(fù)雜界面的時(shí)候,要用很多js,用tag做相當(dāng)不方便

            ruisheng_412 發(fā)表于2009625 21:59:23  IP:舉報(bào)

            樓主說的有道理!

             

            posted on 2009-06-25 22:31 肥仔 閱讀(2322) 評(píng)論(3)  編輯 收藏 引用 所屬分類: Web-后臺(tái)

            評(píng)論

            # re: 為什么主流Java MVC框架如此難以使用  回復(fù)  更多評(píng)論   

            struts2用起來跟ROR的框架比起來,前者的復(fù)雜度實(shí)在是比后者高出了好幾個(gè)臺(tái)階.配置難,使用難,維護(hù)難.
            2010-10-29 15:10 | hancock

            # re: 為什么主流Java MVC框架如此難以使用  回復(fù)  更多評(píng)論   

            java不再做view層
            全部json數(shù)據(jù)交互,丟給前端,你們看著玩唄
            2014-01-20 20:43 | 囧囧明

            # re: 為什么主流Java MVC框架如此難以使用  回復(fù)  更多評(píng)論   

            補(bǔ)充一下,angularJS這貨是神器@囧囧明
            2014-01-20 20:43 | 囧囧明
            久久国产福利免费| 狠狠色丁香久久婷婷综合| 婷婷综合久久中文字幕蜜桃三电影| 色欲综合久久躁天天躁| 久久久久国产一区二区| 久久人妻少妇嫩草AV蜜桃| 久久综合狠狠综合久久激情 | 人妻无码中文久久久久专区 | 久久丫精品国产亚洲av不卡| 久久精品国产免费观看| 亚洲国产另类久久久精品黑人| 亚洲中文字幕久久精品无码喷水| 一本色道久久88综合日韩精品 | 亚洲国产精品久久电影欧美| 狠狠综合久久综合88亚洲| 久久综合狠狠综合久久| 久久精品国产99久久久| 精品国产热久久久福利| 精品无码久久久久久久久久| 欧美精品福利视频一区二区三区久久久精品 | 亚洲精品97久久中文字幕无码| 久久天天躁狠狠躁夜夜2020一| 国产精品亚洲综合久久 | 久久精品麻豆日日躁夜夜躁| 国产精品久久永久免费| 久久久青草青青国产亚洲免观| 久久这里只精品99re66| 国产激情久久久久影院小草 | 久久精品国产福利国产琪琪| 久久人人爽人人爽人人片AV麻烦| 久久亚洲精品国产精品| 久久国产三级无码一区二区| 久久久久亚洲AV无码网站| 久久国产成人午夜aⅴ影院| 久久综合噜噜激激的五月天| 国产一级持黄大片99久久 | 久久夜色精品国产| 久久久无码一区二区三区| 久久久久99精品成人片| 久久夜色精品国产噜噜噜亚洲AV| 久久久久综合中文字幕|