日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

Laszlo平臺(tái)簡介

系統(tǒng) 2096 0
(本文發(fā)表于《程序員》雜志2005年第2期)

2004年10月,Laszlo Systems公司開放了主要產(chǎn)品Laszlo Platform的源代碼,于是有意轉(zhuǎn)向富客戶端(rich client)的J2EE開發(fā)者們又多了一種選擇。在Laszlo之外,rich client的實(shí)現(xiàn)策略大抵可以分為兩類:以Flex為代表的一派采用獨(dú)立于瀏覽器的展現(xiàn)格式(例如Flash),顯示效果更美觀,也不受瀏覽器局限,但表現(xiàn)層的開發(fā)需要專門技能,J2EE開發(fā)者常常不能勝任;以XUL/XAML為代表的一派則依賴于瀏覽器,開發(fā)者只需要編寫類似于HTML的標(biāo)記語言,但瀏覽器的兼容性則很差。Laszlo則兼具了兩者的優(yōu)勢。

?

上面是Laszlo的應(yīng)用架構(gòu)圖,看起來平淡無奇,任何一個(gè)基于Flash的rich client應(yīng)用都有類似的架構(gòu)。Laszlo的不同之處在于:在客戶端運(yùn)行的Flash界面不是由美工在Flash編輯器中制作出來的,而是在Laszlo表現(xiàn)服務(wù)器(Laszlo Presentation Server,LPS)中根據(jù)LZX文件編譯生成、再發(fā)送到客戶端的。LZX是一種界面描述格式,其中包含兩部分內(nèi)容:用于描述界面的XML標(biāo)記,以及用于事件處理的JavaScript腳本。讀者可能會(huì)說了:這樣的格式不是就和傳統(tǒng)的HTML頁面很相似了么?正是如此。所以J2EE開發(fā)者自己也可以完成整個(gè)rich client界面的開發(fā),不必去向美工學(xué)習(xí)Flash編輯器的用法了。

下面是一段典型的LZX代碼。我們在<dataset>中描述一組來自服務(wù)器端的數(shù)據(jù),隨后的<text>標(biāo)簽就可以通過XPath定位到這些數(shù)據(jù),并將它們以Flash的形式展現(xiàn)出來:

<canvas>
??? <dataset name="dset">
??????? <employee>
??????????? <firstName>John</firstName>
??????????? <lastName>Smith</lastName>
??????????? <phone>617-536-7855</phone>
??????? </employee>
??? </dataset>
??? <text datapath="dset:/employee/firstName/text()"/>
??? <text datapath="dset:/employee/lastName/text()"/>
??? <text datapath="dset:/employee/phone/text()"/>
??? <simplelayout axis="x"/>
</canvas>

為了迎合J2EE開發(fā)者的口味,Laszlo可謂用心良苦:不僅采用標(biāo)準(zhǔn)的XML作為界面描述和數(shù)據(jù)綁定格式,連事件處理機(jī)制都舍棄了Flash現(xiàn)成的ActionScript,轉(zhuǎn)而采用程序員更熟悉的JavaScript。不過用XML描述界面的弊端也很明顯,就是開發(fā)效率較低。針對這個(gè)問題,IBM也開源了一個(gè)基于Eclipse的編輯器插件,專門用于可視化開發(fā)Laszlo應(yīng)用程序。讀者可以在下列地址找到這個(gè)插件: http://alphaworks.ibm.com/tech/ide4laszlo

可是,盡管具備了Flash美觀、高度可移植的特點(diǎn)和XUL/XAML的簡潔、易開發(fā),但Laszlo仍然存在著諸多問題。首先,腳本的調(diào)試會(huì)是一件頗為麻煩的事情。雖然Laszlo提供了一個(gè)漂亮的腳本調(diào)試器,但由于LZX必須通過LPS的編譯之后才能顯示,因此整個(gè)調(diào)試過程必須連接在服務(wù)器上進(jìn)行。當(dāng)界面邏輯變得復(fù)雜時(shí),可以預(yù)見腳本的調(diào)試過程將嚴(yán)重影響開發(fā)效率。其次,Laszlo的運(yùn)行效率和穩(wěn)定性都存在問題,尤其是在訪問一個(gè)新界面時(shí),編譯Flash的過程長得足以嚇跑用戶,而且通過網(wǎng)絡(luò)傳輸?shù)臄?shù)據(jù)量也偏大。最后,Laszlo對服務(wù)器硬件的要求相當(dāng)高,在大負(fù)載環(huán)境下是否能保持穩(wěn)定運(yùn)行頗可懷疑。

綜上所述,Laszlo確實(shí)為rich client應(yīng)用開發(fā)提供了一種便利而具有高度可移植性的方案,但這種方案目前看來只適于開發(fā)企業(yè)內(nèi)部應(yīng)用。如果用來開發(fā)面向公網(wǎng)的應(yīng)用,效率和傳輸數(shù)據(jù)量的問題可能變得非常嚴(yán)重。因此,將Laszlo稱為“Rich Internet Application平臺(tái)”恐怕還為時(shí)過早。


Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=272258


Laszlo平臺(tái)簡介


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會(huì)非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 灵宝市| 镇赉县| 名山县| 台南市| 宜昌市| 科尔| 常熟市| 郯城县| 长乐市| 绥芬河市| 淮南市| 牙克石市| 延寿县| 平陆县| 工布江达县| 乌兰察布市| 平谷区| 龙门县| 太和县| 青岛市| 潞西市| 鸡西市| 沧州市| 安陆市| 喜德县| 克什克腾旗| 额尔古纳市| 日照市| 红河县| 赤城县| 汝州市| 巴东县| 石台县| 江华| 灵寿县| 乌鲁木齐市| 宜兰县| 射洪县| 三门峡市| 克山县| 崇左市|