词条 | Laszlo |
释义 | 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代码。我们在<dataset>中描述一组来自服务器端的数据,随后的<text>标签就可以通过XPath定位到这些数据,并将它们以Flash的形式展现出来: <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> 可是,尽管具备了Flash美观、高度可移植的特点和XUL/XAML的简洁、易开发,但Laszlo仍然存在着诸多问题。首先,脚本的调试会是一件颇为麻烦的事情。虽然Laszlo提供了一个漂亮的脚本调试器,但由于LZX必须通过LPS的编译之后才能显示,因此整个调试过程必须连接在服务器上进行。当界面逻辑变得复杂时,可以预见脚本的调试过程将严重影响开发效率。其次,Laszlo的运行效率和稳定性都存在问题,尤其是在访问一个新界面时,编译Flash的过程长得足以吓跑用户,而且通过网络传输的数据量也偏大。最后,Laszlo对服务器硬件的要求相当高,在大负载环境下是否能保持稳定运行颇可怀疑。 综上所述,Laszlo确实为rich client应用开发提供了一种便利而具有高度可移植性的方案,但这种方案目前看来只适于开发企业内部应用。如果用来开发面向公网的应用,效率和传输数据量的问题可能变得非常严重。因此,将Laszlo称为“Rich Internet Application平台”恐怕还为时过早。 |
随便看 |
|
百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。