Laszlo

Laszlo是開發和發布富Internet應用程式(RIA)到Web上的開源平台,用來開發面向公網的套用,效率和傳輸數據量的問題可能變得非常嚴重。因此,將Laszlo稱為“Rich Internet Application平台”恐怕還為時過早。

Laszlo是開發和發布富Internet應用程式(RIA)到Web上的開源平台。
2004年10月,Laszlo Systems公司開放了主要產品Laszlo Platform的原始碼,於是有意轉向富客戶端(rich client)的J2EE開發者們又多了一種選擇。在Laszlo之外,rich client的實現策略大抵可以分為兩類:以Flex為代表的一派採用獨立於瀏覽器的展現格式(例如Flash),顯示效果更美觀,也不受瀏覽器局限,但表現層的開發需要專門技能,J2EE開發者常常不能勝任;以XUL/XAML為代表的一派則依賴於瀏覽器,開發者只需要編寫類似於HTML的標記語言,但瀏覽器的兼容性則很差。Laszlo則兼具了兩者的優勢。
Laszlo平台由LZX標記語言和Laszlo表示伺服器組成:
. LZX是基於XML和JavaScript的描述語言,類似於XUL和XAML;LZX使能聲明式、基於文本的開發過程,支持快速原型軟體開發最佳實踐的
. Laszlo表示伺服器(LPS)是一個編譯LZX應用程式為目標運行環境中可執行二進制的Java Servlet;Laszlo目前的目標是Flash Player,LPS將LZX應用程式編譯成SWF位元組碼,為任何使能Flash 5及其以後版本的Web瀏覽器提供這些被編譯應用程式的服務和快取,同時為後端的XML數據源和Web服務代理應用程式請求
使用Laszlo,你可以:
1. 使用基於XML和JavaScript的代碼開發標準的RIA
2. 發布後運行在Linux、UNIX、Windows或Mac OS X下的任何J2EE套用伺服器或Java Servlet容器中,要 把程式發布成swf格式的檔案,從這一點上說,Laszlo的本質和Flex一樣。
3. 運行在Flash 5及其以後版本的Web瀏覽器中,達到所有Web使能桌面系統的97%
可以從http://www.openlaszlo.org/ 下載LPS,最新穩定版本是4.9.0
Laszlo的不同之處在於:在客戶端運行的Flash界面不是由美工在Flash編輯器中製作出來的,而是在Laszlo表現伺服器(Laszlo Presentation Server,LPS)中根據LZX檔案編譯生成、再傳送到客戶端的。LZX是一種界面描述格式,其中包含兩部分內容:用於描述界面的XML標記,以及用於事件處理的JavaScript腳本。讀者可能會說了:這樣的格式不是就和傳統的HTML頁面很相似了么?正是如此。所以J2EE開發者自己也可以完成整個rich client界面的開發,不必去向美工學習Flash編輯器的用法了。
下面是一段典型的LZX代碼。我們在 中描述一組來自伺服器端的數據,隨後的 標籤就可以通過XPath定位到這些數據,並將它們以Flash的形式展現出來:
John
Smith
617-536-7855
可是,儘管具備了Flash美觀、高度可移植的特點和XUL/XAML的簡潔、易開發,但Laszlo仍然存在著諸多問題。首先, 腳本的調試會是一件頗為麻煩的事情。雖然Laszlo提供了一個漂亮的腳本調試器,但由於LZX必須通過LPS的編譯之後才能顯示,因此整個調試過程必須連線在伺服器上進行。當界面邏輯變得複雜時,可以預見腳本的調試過程將嚴重影響開發效率。其次,Laszlo的運行效率和穩定性都存在問題,尤其是在訪問一個新界面時,編譯Flash的過程長得足以嚇跑用戶,而且通過 網路傳輸的數據量也偏大。最後,Laszlo對伺服器硬體的要求相當高,在大負載環境下是否能保持穩定運行頗可懷疑。
綜上所述,Laszlo確實為rich client套用開發提供了一種便利而具有高度可移植性的方案,但這種方案目前看來只適於開發企業內部套用。如果用來開發面向公網的套用,效率和傳輸數據量的問題可能變得非常嚴重。因此,將Laszlo稱為“Rich Internet Application平台”恐怕還為時過早。

相關詞條

相關搜尋

熱門詞條

聯絡我們