"從實現角度上說,基于jsp tag可以說是JSF的致命弱點之一. jsp tag從設計之始就一直是未經過實踐考量,其設計無法支撐復雜的控件架構. 特別是早期JSF與標準的JSP tag不能互通實際上是明顯的設計缺陷, 而且性能問題是內置在該設計中的. 現在雖經多個版本的不斷補救, 但是為了兼容性, JSP Tag負擔過重, 它始終是基于文本處理模型,實際上不可能有什么本質性的進步. JSP tag模型過分孱弱必然造成JSF設計中大量處理過程堆疊到界面對象層,更加劇了JSF的模型復雜度和性能瓶頸。"
請問你認為你真正理解JSF的組件架構嗎? 你有真正去理解過JSF的架構設計嗎?
請問JSF確實是必須基于JSP TAG嗎? facelets又是什么? 是替代方案還是補充?或者說是另一種視圖組織技術? JSF并非一定需要JSP為表現載體, 自然也并非一定要基于JSP Tag.
REST風格又怎么樣? REST是什么時候提出來的? 正如REST提到的那樣,有些表現轉移是應該明確的,但時代在進步,并非所有的應用都是那樣,下任何結論之前我們應該先給定一個命題的場景(前提).
誠然, JSF的導航體系比STRUTS并未進步多來,但并不代表我們不能定制其導航策略,正如SWF與JSF的協同一樣.
JSF架構本身沒有問題, 問題在于目前對JSF的實現上, 目前只是可用組件還不多而已,大部分都需要自己開發, 然而可喜的時,目前已經有許多商業的實現,也有許多開源的實現, 比如JBoss的richfaces, 看看別人實現的組件, 并非想象的那么重型,也并非想象中那么難用.關鍵看你如何用. 換句話說, 如果光頹頹地應用JSF,的確有些煩鎖,但如果你能與SPRING集成起來使用,開發就會輕便許多.如果你的應用是流程式的, 可以集成SWF, 這會讓你的應用更加整潔.
PS.我所談到的這些技術并非空穴來風, 我本人已經實踐了一年多了, 其實踐的項目不會是你想象中的那么小.
JSF技術有一些真正有價值的東西,但是根據我們的實踐,這些價值有其他更加優雅的體現方式。 JSF不是必須采用JSP Tag, 但是它需要一種類似的技術,而它在架構設計中必然要照顧到這種技術實現。 其實witrix中的tpl技術也是一種tag技術,只是它遠比jsp tag要精致。
JSF架構最大的問題就是開發新組件很麻煩,完全基于JSF構建程序很繁瑣,最終提供給用戶的調用接口其實也有更加簡明的方式.
# re: 關于JSF[未登錄] 回復 更多評論
2007-07-30 17:52 by
下了個微軟的 Microsoft Visual Web Developer 2005 速成版, 感覺 JSF 跟 ASP.NET Web Form 的確很像. 微軟的組件類庫很方便, 很快速, 拖放幾下就可解決問題. 而且他們的設計器既能解析HTML,也能解析里面的 TagLib. 所以 Tag Lib 本身不是錯, 開發組件難點很大也不是錯. 微軟的 IDE 已經幫你做好了所有的東西. 所以 JSF 難點就是 IDE 太差, 組件定制可以由專業廠商來做. 微軟的 .NET 控件從來不鼓勵程序員自己去做.
一句話, 每人都想做大自己掙錢, 才導致了這么多 Java 廠商 作出來的東西竟然還不如微軟一家公司做的. 那么多框架, 很多都是垃圾. 只有組件沒有 IDE 你讓人手寫代碼來做頁面?
JSF基于事件的開發模式與傳統JAVA web開發有很大的差異,導致很多老的JAVA程序員很難適應,
還有一點JSF缺少一個像Microsoft Visual Studio強大的開發工具,不過netbeans正往這個方向努力,