Flex 4 发布了。。新的特性

    Flex 4在设计之初定义了三个主题:Design in Mind, Developer Productivity和Platform Evolution。
Design in Mind

尽管Flex的流行程度已经相当让人满意,对于Adobe团队来说,仍然有一些遗憾,那就是:大部分RIA应用太“Flex”了,由于很多开发者认为Flex的用户界面难以从根本上定制化或者说定制的成本太高,很多产品选择了在Flex提供的默认界面上进行一些简单样式和图素定制以提高生产效率。这样一来,作为RIA成功因素中必不可少的设计师(无论是图形设计还是体验设计)阵营,仍然难以深入整个产品的开发流程,凝聚着心血的流程和界面设计,难以被开发者100%“忠于原著”地实现。与此同时,开发者也对于设计师的“善变性”叫苦不迭,设计师“大笔一挥”修改了设计,工程师可能就需要额外付出很多精力来修改代码。这样的情况在一般的RIA开发中并不少见。基于这个原因,Flex 4的一个核心目标,就是改进设计师与开发者协作的工作流程,让设计师充分参与到产品开发过程中,将自己的创意和想法直接的表现为可以运行的应用程序和可供进一步开发的代码。而对于开发者来说,可以更加关注应用程序的数据处理和业务逻辑,减少在界面方面的工作量。为了实现这一目标,Adobe提供了“三把利器”,分别是“Spark组件模型”,“FXG”,和“Flash Catalyst”。

Spark组件模型将Flex组件中数据和逻辑处理与界面外观彻底的分离出来,使得开发者可以基于比较纯粹的 MVC模型进行开发,是改进工作流程的“前提”。
FXG作为Adobe CS套件和Flash/Flex平台之间的通用交换格式,使得在程序与创意之间的“交流”更加容易,是沟通的桥梁,可以理解为是“基础设施”。
而Flash Catalyst则是建立在这样的前提和基础设施上的“上层建筑”了,它可以让设计师充分表达自己的创意而完全不需要掌握任何代码,当静态的图片在设计师手中变成了可以运行,可交互的应用程序原型,整个产品的工作流也将真正的“无缝”化。
Developer Productivity

Flex的一大优势就在于其出色的开发效率,或者说是“开发者生产力”。提高生产力可以减少成本,降低风险,对于一个团队乃至企业都是至关重要的。在Flex 4中,有很多帮助提升生产力的特性,其中我最想提及的莫过于全新的视图状态(View States)语法了。在Flex 3的时代,老实说,我从来没有使用过的视图状态,甚至我看到我的团队里有工程师使用它我也要建议他改用ActionScript,因为我认为它的语法实在有点“恶心”。MXML的一大优势就是其清晰的结构和可读性,而在Flex 3中使用视图状态会让你的MXML页面结构“即不清晰,也不可读”,给人的感觉像是在用MXML去写AS代码,那我宁可选择直接去写AS,至少可以更容易看懂。在Flex 4中,这一缺陷得到了根本性的改善,你可以使用最熟悉的“点语法”来定义与状态有关的属性,样式和事件。我有理由相信,使用Flex 4开发项目时,视图状态将成为最常用,最好用的特性之一。除此以外,你还会发现许许多多的特性都能进一步提高你的开发效率,包括:

    * 双向数据绑定 - 简单的一个“@”标记来实现数据绑定的双向性。
    * 高级CSS Selector - 引入了更多CSS标准中的Selector规则,包括id selector, descendant selector还有视图状态的selector。
    * 全新的特效组件 - 全新的特效组件集合,并增加了像“Transition.autoReverse”(状态切换时自动播放反转效果)这样贴心的功能。
    * 新的容器布局模型 - 实现容器布局的定制化将比以前更容易,并且可以充分地在不同组件中复用布局算法。
    * 编译器效率提升 - 据统计,Flex 4编译器的编译效率将比以前提升百分之XX…现在还不能确定具体提升多少,但可以肯定的是,这是Flex SDK团队工作的重点之一。

Platform Evolution

Flex始终是伴随着Flash平台(Flash/AIR)而进化的。Flex 3正式发布之时,Flash平台仍处于Flash Player 9的时代,因此并不具备Flash Player 10的特性。因此,Flex 4就必需能够体现并利用FP 10所带来的革新。其中最显著,最令人兴奋的莫过于3D相关的特性,在Flex 4中,创建基于3D的布局和3D 动画效果将是一件非常容易的事情。另一方面,FP 10新的文本引擎(FTE)和基于此的文字布局框架(TLF)使得一直以来为人所诟病的Flash文本处理能力得到了根本性的提升,而Flex 4中的Spark 文本组件将全部基于FTE/TLF。例如,你可以使用一个简单的属性让本文进行多列显示,或者横跨多个容器进行文字排版。此外,Pixel Bender的功能也被集成到Flex 4中。

你可能感兴趣的:(Flex,Flash,企业应用,AIR,FP)