滿江紅開放技術研究組織發布Seam 2.0中文文檔RC版
"你得知道,我想的比做的更多。如果你要做一個開源項目,必須設想好它的道路,它才會成功。"Gavin King這麼說過。那時候他已經在新天地luna酒吧灌下大杯的法國葡萄酒,還要裝作若無其事。不得不承認這個家夥相當聰明且自負。他做出的決定是深思熟慮的。B/S程序和C/S不同,Request/Response模型讓程序冗長的像裹腳布。你同時要處理多種數據失配:服務器端的RDBMS和瀏覽 器展示出來的HTML之間,需要Servlet的渲染,數據經曆了RDBMS Row ,ResultSet, 若有若無的DTO和瀏覽器Form數據這幾個步驟,讓數據變得支離破碎。實際上所有的Java框架的核心都是解決不同層麵的這些破碎。Hibernate 解決的是DTO和ResultSet之間的破碎。和大多數初學者認為的Hibernate是一種麵向對象的ResultSet包裝器的字麵理解不同, Hibernate的目的是對RDBMS數據的便於進行緩存的細粒度切割,"麵向對象"隻是工具而非目的,緩存才是一切的本質,它讓Hibernate真 正成為了具有強大戰鬥力的武器而非可笑的對象封裝器。
解決了這一失配後,Gavin King把目光放到了HTML Form和服務器對象之間的失配上。這一次的目的是簡化,盡可能的簡化,因為對Web編程而言,最大的瓶頸是開發效率,因此Seam的目的就是最大限度的 簡化複雜性。這一次的戰線要比Hibernate寬廣的多,Seam的好處因而也更加讓人看得明白:它提升JSF的實力,讓快速開發效果豐富的Web應用 程序成為可能。從雙向注入到Annotation,目的都是為了盡量減少服務器端的代碼量,而RichFaces和JSF編輯器,則是為了讓Seam的產 出變得效果豐富。
但顯然,HTML Form的表現力和可能的複雜性遠遠超過ORM中對象的關係的種類,因此,任何針對HTML的組件封裝都必須以其高品質才能讓用戶感到信服。作為整合開發 工具Seam的道路還很長,對Grid等複雜組件的支持尚不夠,讓2.0仍然無法達到Delphi在Windows開發界的廣大影響力。換句話說,JSF 的未來,在於其是否能成功的製造出組件產業鏈,一方麵真正簡化開發者的勞動,提高效率,另一方麵讓組件開發者能把經精力集中在開發高質量的組件上。在製造 產業鏈這一目標上,JSF是領跑的,而JSF框架中,Seam是領跑的。
因此,你應該花些時間來看看Seam。
來吧,在這裏https://wiki.redsaga.com/confluence/display/SeamRef/Home
最後更新:2017-04-02 00:06:25