OpenLaszloRIA 应用框架
OpenLaszlo 是一种富客户机应用程序架构,使用 Macromedia Flash 作为部署载体。OpenLaszlo 依赖 JavaScript 来表达逻辑,并提供了传统 Flash 开发方式无法比拟的一些优点,包括高级的 UI 约束系统、面向对象的设计方法学以及内置的对 Web 服务和各种风格的远程过程调用(Remote Procedure Call,RPC)的支持。
近来 Web 开发领域的一个焦点是将富客户机体验引入 Web。Asynchronous JavaScript and XML (Ajax) 使开发人员和用户拓宽了对 Web 的认识,俨然有取代标准桌面富客户机之势。然而,Ajax(以及当前的浏览器技术)却在以下几个方面存在局限性:
- 提供带有大量动画的用户界面。
- 轻松地提供能在多种浏览器,包括旧浏览器上显示的标准表示法。
- 轻松地实现某些类型的应用程序,包括动态建立的应用程序。
但是,这些只是 OpenLaszlo 所擅长的一部分。在深入探讨这种架构之前,首先我们花点时间来讨论一下什么是 OpenLaszlo。
Laszlo 是 OpenLaszlo 所使用的一种语言,这种语言通过说明性方法,用 XML 和 JavaScript 来创建部件或整个应用程序。这种标记语言与脚本语言的合并类似于目前的 HTML/JavaScript 组合。然而,Laszlo 不是通过浏览器在客户端来解释语言,而是在服务器端将语言转换成 Macromedia Flash 格式。这样实际上就自动提供了跨浏览器支持,因为 Flash 提供了一个标准运行时。由于 Flash 格式是基于矢量的,因此允许使用非常灵活多变的用户界面组件,并且这些组件可以大量重用。
然而,OpenLaszlo 还不止这些。OpenLaszlo 还受到一个可选的服务器端容器,即 OpenLaszlo 服务器的支持,后者提供了对远程过程调用、Web 服务和 transcoding 服务(负责将较长的 MP3 文件以流的方式传送给用户之类的事情)的广泛集成和支持。作为一种语言,Laszlo 还采用了一些令人兴奋的概念和设计方法学,以便在数分钟内创建出真正可重用的组件。这种组件拥有令人喜爱的视觉效果,并且为用户所熟悉。