OpenLaszlo的双运行时方法(HTML5和Flash/SWF)仍然有效吗?

7 flash html5 runtime openlaszlo lzx

据我所知,OpenLaszlo是唯一具有以下功能的富Internet应用程序平台:

  • 基于声明的XML用户界面语言(类似于Mozilla的XUL)称为LZX.
  • 将LZX交叉编译为JavaScript或ActionScript 3(因此支持两个运行时).
  • 能够仅使用XML和JavaScript或JavaScript开发组件; 所有组件都由OpenLaszlo呈现,因此它们在浏览器和设备上看起来相同.
  • 查看跨运行时工作的系统,键盘和鼠标管理.
  • 组件可以用LZX(XML + JavaScript)编写,也可以只用JavaScript编写
  • 支持基于XPath的组件到数据集元素映射的XML数据集.
  • 布局引擎支持许多预定义的布局; 开发人员可以轻松实现自定义布局.
  • 使用XML属性中的简单语法强大支持约束:$ once {JavaScript expression}或$ always {JavaScript expression}.
  • 内置调试器(开发人员控制台),可在两个运行时中运行.

我还没有看到任何更现代的JavaScript框架,它使OpenLaszlo像创建HTML5应用程序一样简单 - 与OpenLaszlo一起提供的当前组件集的唯一缺点看起来有点像90年代的Mac OS.

但是,将应用程序部署为HTML5/JavaScript应用程序和Adobe Flash应用程序(可选择创建基于Adobe AIR的移动应用程序,虽然该功能不是直接构建到OpenLaszlo服务器中)的方法有多有效?我听说Adobe尝试使用FalconJS编译器原型做类似的事情(有关更多信息,请参阅此Adobe视频关于Falcon和FalconJS的讨论),但他们停止了努力.作为Apache Flex项目的一部分,FalconJS概念验证的代码将作为Apache Flex项目的一部分提供给Apache Foundation

令人惊讶的是,在OpenLaszlo展示部分中没有一个应用程序同时使用这两个运行时:http://www.openlaszlo.org/showcase

2007年的一篇古老的Ajaxian文章中,我读到了Laszlo Webtop的"最终版本将支持OpenLaszlo 4,这将意味着支持Ajax和Flash应用程序".但是Laszlo Webtop演示站点http://gowebtop.com/webtop/只有基于Flash的Webtop版本.我在Stackoverflow的讨论读到,Gliffy--我所知道的最令人印象深刻的OpenLaszlo应用程序之一 - 已经使用JavaScript重建,而不是利用OpenLaszlo的双运行时功能.

是否有任何其他大型OpenLaszlo应用程序部署为HTML5/DHTML和Flash,这些应用程序可能未在OpenLaszlo.org网站上列出?即使Flash不再流行,它仍然是许多用例的相关技术(音频会议,浏览器中的3d,GPU加速视频播放等).

小智 5

我在2004年结束时开始使用OpenLaszlo,当时没有更好的免费开源RIA工具满足我的需求.

我的应用程序目前正在利用SWF和JavaScript运行时.因为他们不在现在已经死亡的Laszlo展示中并不意味着没有大型应用程序可以利用这两个运行时.我已经在我的应用程序上工作了7年.与我相比,Gliffy是一个小修补玩具......我还没有找到比我更复杂的OL应用程序.并不意味着他们不在那里,但如果他们是我没有见过他们.

只有一个或另一个运行时,我的应用程序是不可行的.所以对我来说,两个运行时都是必不可少的.HTML5对于某些事情来说太慢了,而SWF10提供了最一致的跨浏览器体验.

HAXE不是OL替代品,这是肯定的.对我来说,OL的价值在于从约束,基于实例的编程以及将数据绑定到视图的简易性所带来的生产力提升.我无法使用任何其他工具自行构建我的产品.我看得远远.随着OL的下降,现在几乎已经死了,我也一直在寻找.OL的HTML5运行时无法在最新的IE版本中运行,但它可以通过IE7仿真模式或Chrome框架插件运行(由于IE糟糕的JavaScript引擎,它实际上是必不可少的).

您是否需要两个运行时取决于您的项目.虽然编译器制造商认为能够同时发射SWF和HTML5运行时可能没有意义,但由于OL已经能够做多年,现在有一些系统像我一样利用它能力.

例如,我的系统被用于不允许Flash插件的军事分类网络......所以对于那些安装我必须依赖HTML5.当不在分类网络上运行时,我的系统在有利的时候利用SWF运行时的运行时性能和其他功能.混合方法对我来说至关重要.如果我有一个仅限SWF的应用程序,它将不被允许在分类网络上,但如果它是HTML5,那么由于浏览器的限制,该应用程序的部分将不会很好.