新聞中心
用過一段時(shí)間的Woodstock,當(dāng)時(shí)感覺有點(diǎn)爽,但后來(lái)對(duì)于組件的控制方面的不是很好,沒有在畢業(yè)設(shè)計(jì)上使用. 對(duì)于JSF想到了一些缺點(diǎn),在這里分析一下。只是淺薄見解

成都創(chuàng)新互聯(lián)公司不只是一家網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司;我們對(duì)營(yíng)銷、技術(shù)、服務(wù)都有自己獨(dú)特見解,公司采取“創(chuàng)意+綜合+營(yíng)銷”一體化的方式為您提供更專業(yè)的服務(wù)!我們經(jīng)歷的每一步也許不一定是最完美的,但每一步都有值得深思的意義。我們珍視每一份信任,關(guān)注我們的成都網(wǎng)站設(shè)計(jì)、做網(wǎng)站質(zhì)量和服務(wù)品質(zhì),在得到用戶滿意的同時(shí),也能得到同行業(yè)的專業(yè)認(rèn)可,能夠?yàn)樾袠I(yè)創(chuàng)新發(fā)展助力。未來(lái)將繼續(xù)專注于技術(shù)創(chuàng)新,服務(wù)升級(jí),滿足企業(yè)一站式成都全網(wǎng)營(yíng)銷推廣需求,讓再小的品牌網(wǎng)站建設(shè)也能產(chǎn)生價(jià)值!
1.有狀態(tài)編程模型
JSF把Web編程搞的非常像JAVA SE GUI編程模型。維護(hù)組件樹、組件狀態(tài)。這讓我感覺非常不舒服。Web開發(fā)就是Web開發(fā),本身就是無(wú)狀態(tài)的。所有行為都是基于 request,session,application等范圍。JSF硬要往GUI模型上套,結(jié)果就是非常不自然,有點(diǎn)四不像了。而且JSF維持的僅僅是視圖狀態(tài),而不是數(shù)據(jù)狀態(tài),這種編程模型有點(diǎn)混亂。我認(rèn)為Web就是Web!
2。面向組件開發(fā),更加OO
這是在討論去里看到有人這樣為JSF宣傳。我承認(rèn)這句話的陳述是正確的。因?yàn)镴SF把Web編程基本上變成了JAVA SE的GUI編程。確實(shí)是面向組件的。但是通過使用,我覺得這種做法的優(yōu)勢(shì)是否真的有那么大,值得考慮。相比JSF,PHP、Rails、 JSP(JSTL)都沒有刻意提供所謂的組件。這種做法方便了操縱HTML控件,直接、簡(jiǎn)單。而使用JSF控件時(shí),則對(duì)于他的控制能力變得比較模糊并且不夠靈活。我們需要在Backingbean里對(duì)組件進(jìn)行控制。我感覺--太作做了。而且這種面向組件的方式所代來(lái)的好處遠(yuǎn)不能抵消它所代來(lái)的麻煩。
至于所謂的OO論,表示層的東西有必要刻意強(qiáng)調(diào)像JSF這種面向組件,OO嗎?對(duì)于Widget那種ajax的HTML面向組件我是可以理解的。 PHP/RoR沒有面向組件但也非常好用。表示層只需要提供一些頁(yè)面的重用和插入功能就足以了。這讓我想起了人們對(duì)JAVA EE過度分層的抱怨。于Rails形成了鮮明的對(duì)比。所謂的OO在服務(wù)器端、業(yè)務(wù)處理的代碼中有很大用處。但是Web是瘦客戶端(不像Swing)!在 Web的表示層中如此大張旗鼓的宣揚(yáng)JSF式的OO我認(rèn)為是一種誤區(qū)。我們可以看看PHP\Rails這些語(yǔ)言框架,做到MVC,足夠了。Web的表示層需要的最重要的特性就是容易使用、容易控制、容易重用(也面片段)。
JSF那種把HTML和后端弄到一起,模仿Swing,搞OO的做法有點(diǎn)費(fèi)力不討好的感覺。
新聞標(biāo)題:對(duì)于JSF的一些思考
URL網(wǎng)址:http://www.5511xx.com/article/djeesig.html


咨詢
建站咨詢
