一切皆可抽象

          大而無形 庖丁解牛 厚積薄發(fā) 滌慮玄覽
             ::  ::  ::  ::  :: 管理

          EJB用自己的悲劇人生警告Sun,不可對新技術(shù)的推廣掉以輕心,但Sun還是再次犯下同樣的錯誤。與Microsoft和Intel成功的商業(yè)推廣策略截然不同的是,Sun 完全沒有估量到,JSP作為一項成功技術(shù)的價值和影響力,在JSF的推廣上,出現(xiàn)了令人痛心的失誤。如果JSF以JSP3.0的名義推出,那么JSF的日子恐怕要比現(xiàn)在好過得多。

          ??? 1. JSF沒有站在JSP巨人的肩膀上

          ??? 前文說過,EJB是Sun的傷心往事,它用自己的悲劇人生,警告Sun,不論技術(shù)也好,商務(wù)也好,凡事應(yīng)該有一個全盤的規(guī)劃,再也不能想到什么是什么了。一項好的技術(shù),如果不加以適當(dāng)?shù)耐茝V,最后可能逃脫不了被束之高閣的命運(yùn),大把的資金投入,自然也難免竹籃打水一場空。

          ??? 當(dāng)然,如何進(jìn)行商業(yè)運(yùn)作,Sun比我高明得多了,似乎輪不到我在這里說三道四,不過,Java已經(jīng)不單單屬于Sun了,Java已經(jīng)成為全世界的Java,所以,所有的Java程序員,都有發(fā)表自己意見的權(quán)利。未必都是真知灼見,但Java世界就是因為有這些不同聲音的存在,才顯得無比的精彩。

          ?? 其他的技術(shù)我不敢妄加評論,就JSF這項技術(shù)而言,Sun的商業(yè)策略實在是不敢恭維。在JSP已經(jīng)深入人心的時候,為什么不繼續(xù)沿用JavaServer Pages的這個如雷貫耳的名稱,而要標(biāo)新立異地推出一個JavaServer Faces的怪物呢?你看人家Microsoft,在ASP流行開來之后,推出ASP.NET,是多么的順理成章。?

          ??? 暫且不論這兩項技術(shù)的區(qū)別有多大,就沖著似曾相識的名稱,Microsoft就讓大批的ASP用戶,自覺自愿地加入ASP.NET的陣營。沒有任何抵抗,Microsoft兵不血刃,不費(fèi)一槍一彈就完成了從ASP向ASP.NET的過渡。

          ??? 同樣的策略Intel也曾使用過。第一代“奔騰”芯片推出后,獲得了巨大的成功,“奔騰”一詞,一時間名噪天下。Intel看到了這一點,并且立刻明白了該怎么做,所以,當(dāng)下一代芯片制造出來時,Intel完全沒有在命名上費(fèi)什么腦筋,直接冠以“奔騰II”的名字,馬上令一大批“奔騰”的愛好者趨之若騖。此后,“奔騰III”“奔騰IV”,Intel將“奔騰”一詞的所有油水都榨干了,才心滿意足地構(gòu)思下一個名字。

          ??? 相比之下,Sun則完全沒有估量到一項成功技術(shù)的價值和影響力。令多少對手眼紅的JSP背后龐大的用戶群,Sun卻視若無物,不知道Sun是沒有看到這一點呢,還是不屑利用這一優(yōu)勢。

          ??? 不管怎樣,當(dāng)JSP如日中天時,不知借JSP之勢點燃JSF的大火,反而暴殮天物,另起爐灶,Sun簡直就是在自毀JSF的前程。也許Sun主觀上并不存在這樣的故意性,但客觀上造成了這樣一種局面,也是不可原諒的失誤。

          ??? 2. JSF唯有一切從頭再來

          ??? 如果JSF沒有叫做JSF,而是叫做JSP 3.0,情形會是如何呢?

          ??? 可以想見,首先,大批的JSP愛好者會蜂擁而至,慶賀JSP的新版本;然后,一批“牛人”們很快發(fā)現(xiàn),JSP的新版本,引入了他們期待已久的組件模型和事件驅(qū)動模式,JSP終于有了和ASP.NET抗衡的資本;接下來,“牛人”們必定奮筆疾書,以超凡的熱情四處撒播JSP 3.0的種子。

          ??? 于是,網(wǎng)絡(luò)上、論壇里,到處充斥著為JSP 3.0唱贊歌的文章,JSP 3.0成為炙手可熱的名詞,而Sun專家們借JSP 3.0的名義推銷的JSF組件模型和事件驅(qū)動模式,說不定現(xiàn)在已經(jīng)成為Java Web編程的新貴。

          ??? 將JSF以JSP3.0的名義發(fā)布,絕非戲言,是完全可行的。從技術(shù)上來看,JSF是建立在Servlet/JSP基礎(chǔ)之上的,和JSP有著天然的聯(lián)系,將JSF作為JSP3.0的一個嶄新的擴(kuò)充部分,隨JSP3.0一起發(fā)布,即符合從JSP到JSF的平滑過渡的要求,同時也能滿足程序員對于JSP3.0新特征的期待。

          ??? 實際上,JSF和JSP融合的趨勢越來越明顯,例如在JSF1.2版本之前,JSP和JSF各有一套獨立的表達(dá)式語言(EL,Expression Language),而從JSF1.2開始,這兩套不同的表達(dá)式語言已經(jīng)統(tǒng)一為Unified EL,并且從JSF和JSP規(guī)范中分離出來,自成一體。所以,讓JSF搭上JSP的快車,一起前進(jìn),其實是很自然的事。

          ??? 可惜,這些只能發(fā)生在Sun的夢里了。JSP與JSF,一字之差,Sun將一項頗具潛力的Java Web框架技術(shù),親手打回到娘胎中,讓其以一個初生嬰兒的身份,光著身子降臨到Java Web世界。這個本來可以衣著光鮮地與ASP.NET一起獨步江湖的漢子,現(xiàn)在唯有恨恨地拋下一句“君子報仇,十年不晚”,然后黯然離去了。


          評論

          # re: 一字之差 Sun讓JSF光著身子降臨到Java Web世界[未登錄]  回復(fù)  更多評論   

          2007-03-17 13:38 by jrobot
          jsf有它的復(fù)雜性和缺點,雖然偶沒學(xué)過- -
          如果他夠好,隨便起個名字也會紅的,就像spring等,但是你說的當(dāng)然也有些道理

          # re: 一字之差 Sun讓JSF光著身子降臨到Java Web世界  回復(fù)  更多評論   

          2007-03-17 16:03 by 鋒出磨礪
          sorry 轉(zhuǎn)貼的。慚愧。

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 夏邑县| 乐至县| 青铜峡市| 砚山县| 巴南区| 绥滨县| 思茅市| 青田县| 梁山县| 柳州市| 宁海县| 安达市| 邛崃市| 江北区| 禹城市| 涪陵区| 太康县| 连云港市| 永吉县| 邯郸市| 若羌县| 策勒县| 曲松县| 玉环县| 隆德县| 普定县| 沈丘县| 藁城市| 金溪县| 洛浦县| 东海县| 深水埗区| 大足县| 新干县| 瓮安县| 甘谷县| 赤城县| 沅陵县| 长顺县| 凯里市| 清新县|