我分析Flex的未来
网络技术高度发展,提供了各种应用的可能。网络应用是现在以及未来提供各种服务的主要的形式。诸如Photoshop、Office之类的复杂应用已经藉由浏览器以网络应用的形式出现(限于中国国内的网络带宽,类似复杂应用似乎并没有被广泛使用)。这类网络应用被冠以名称:RIA。 罗列目前的RIA技术:Flex、Silverlight、Curl、JavaFX、Ajax。。。 可以给RIA技术这样分类(包括未来可能出现的技术): (1)需要在客户浏览器中安装解释插件 ? ? ? ? ? ? ? ? ? ? Flex(ActionScript): ?FlashPlayer插件 ? ? ? ? ? ? ? ? ? ??Silverlight(.Net) ? ?:?Silverlight运行时环境插件 ? ? ? ? ? ? ? ? ? ??Curl ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?:?Curl运行时环境插件 ? ? ? ? ? JavaFX ? ? ? ? ? ? :?JavaFX运行时环境插件 ? ? ? ? ? 这些技术的应用特点是,它们都是单一开发语言环境(使用一种开发语言就可以开发出RIA应用) ,需要特定的运行时环境。 ? ? ? ? ? 优点一:浏览器插件屏蔽了不同浏览器的差异,使得一套代码可以跨越不同的浏览器。 ? ? ? ? ??优点二:在单纯的语言环境下,没有特异语言融合的障碍。只要插件功能足够强大、该语言功能足够强大,你就可以“为所欲为”。 ? ? ? ? ? 优点三:这些技术都是面向对象的开发技术。 (2)无需浏览器插件,依靠浏览器解释引擎 ? ? ? ? ? ? ? ? ? ??Ajax: ?它是多种传统技术的组合(地球人都知道) ? ? ? ?? ? ? ? ? ? 这些技术的应用特点是,它们都是多开发语言环境(例如 JavaScript+DHTML+XML) 。 ? ? ? ? ? 优点:不需要插件浏览器插件,一个浏览器足以。 ? ? ? ? ? 缺点一:多种语言(技术)带来了开发的复杂性。 ? ? ? ? ? 缺点二:现存的各种浏览器都不能完全遵守HTML标准,造成同一套代码在不同浏览器上表现不同?(这个地球人也知道) ? ? ? ? ? 缺点三:不是面向对象的开发技术 =========================================================================================== 藉由浏览器插件运行的ActionScript(Flex)是先进的、是最成熟的。Flex框架是ActionScript的高级封装,目前封装的并不理想,体现在:? ? ? ? ? (1)未完成升级过渡(mx-->Spark) ? ? ? ??(2)框架源代码垃圾太多 ?? ? ? ?(3)代码结构设计不理想,可读性差 ?? ? ? ?(4)体积太大 对于(1),随着Flex交由Apathe社区管理,社区将完成向Spark过渡的后续工作。 而(2)(3)(4),我认为其形成原因是Adobe过于追求快速的版本升级,过于追求版本的向下兼容;过于追求功能上的大而全,无视RIA应用的不同场景的不同需求造成的。 这三者会成为Flex改革的主要方向,未来的Flex框架可能会“大手术”,变为可插拔的体系架构来满足不同场景的不同需求。 比如有些场景不需要动态变换皮肤,不需要动画效果。那么就将这些功能“拔掉”,以减小Flex程序的体积。
Flex提供了在浏览器应用环境中丰富的功能和操作体验,这是有代价的。功能越多,需要的代码就越多,程序的体积就越大。 适度减小Flex程序的体积是必要的。 但是,体积缩得再小,也不可能像JSP/PHP那样的网页只有几K大小。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |