Andrej Koelewijn 在他的BLOG上寫了一篇文章“Creating a jsf div component”(http://www.it-eye.nl/weblog/2006/04/25/creating-a-jsf-div-component/),用大約一兩千字的篇幅寫了一個很簡單的JSF組件。這篇文章在Tapestry的mail list(http://news.gmane.org/gmane.comp.java.tapestry.user)基本引起了哄動,大家都“ROTFL”(笑得在地板上打滾),因為要實現同樣的功能在Tapestry中只需一行代碼!一個Tapestry同仁說:“
Abstraction layers on top of abstraction layers...
They have built so many of them that they have abstracted themselfs from the
reality... the majoraty of JSF users just want to build Html pages! So let's
make it totally complicated for them.... :-D
”
文章作者Andrej Koelewijn坐不住了,不得不又寫一篇BLOG解釋(http://www.it-eye.nl/weblog/2006/04/26/jsf-PRodUCtivity/)。他承認,用JSF寫一個組件確實比較麻煩,確實不如在Tapestry中方便。但他仍堅持認為JSF的綜合生成力強于Tapestry,因為JSF有很好的IDE的支持(如JDeveloper)而Tapestry沒有。
Tapestry大大簡化了組件的編寫工作,它鼓勵開發人員在自己的WEB應用程序中編寫自己的組件,以達到更高程度上的代碼復用。鼓勵開發人員寫組件,恐怕連Delphi、VB都沒有做到——有多個人能在開發軟件時“順便”寫出幾個組件出來?但在Tapestry中,寫個組件算什么,太輕易了,假如一個WEB程序中竟然沒有一個自己寫的組件,反而說明作者的開發思路有問題。注:這并不是因為Tapestry缺少內置組件,Tapestry中的內置組件(以及第三方組件)并不少。鼓勵開發人員寫組件大致有兩個原因:一,寫組件很輕易,二,更利于代碼重用。
新聞熱點
疑難解答