首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> J2EE

對 JSF 的批判性思考:有狀態模型、組件化爭議與 Web 本質的反思

     編輯:J2EE

作者用過 Woodstock(JSF 組件庫)感覺尚可,但組件控制不佳,未用於畢業設計。基於實戰提出 JSF 兩大核心質疑,僅為拋磚引玉。

1. 有狀態編程模型:Web 本質是無狀態的

JSF 將 Web 編程強行拉向 Java SE GUI 模型:維護組件樹、組件狀態。這非常不自然、四不像。Web 開發基於 request/session/application 範圍,本質無狀態。JSF 僅維護視圖狀態而非數據狀態,編程模型混亂。Web 就是 Web!

2. 面向組件開發、更 OO?優勢未必抵消麻煩

  • 承認 JSF 確實將 Web 編程變為 Java SE GUI 編程,是面向組件的。
  • 但實際使用中,組件控制能力變得模糊、不靈活,需在 Backing Bean 中操控組件,感覺「太作做」。
  • 對比 PHP、Rails、JSP(JSTL) 無刻意組件模型,直接操作 HTML 控件更簡單直接。
  • 面向組件帶來的好處遠不能抵消其麻煩。

3. 表現層 OO 論調是誤區

  • Widget 類 Ajax HTML 組件化可理解,但 PHP/Rails 無組件同樣好用。
  • 表現層只需頁面片段重用與插入即夠,MVC 做到位即可。
  • OO 在服務端業務邏輯層價值巨大,但 Web 是瘦客戶端(非 Swing),表現層大張旗鼓搞 JSF 式 OO 是誤區。
  • JSF 將 HTML 與後端綁死、模仿 Swing、強行 OO,屬於費力不討好。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved