
软件工程主任,负责 Macromedia Flex 应用程序模型的开发
自 2004 年 3 月 Macromedia 发布 Flex 1.0 以来,Flex 已广泛地应用于各种商业领域,如电子商务、行政管理仪表板和企业业务流程自动化。
产品开发小组在推出 Flex 1.0 后,紧接着历时 1,000 多个小时与 Macromedia 专家顾问团、系统集成商合作伙伴及客户密切协作,以更好地了解其软件开发和业务需求。这样,我们收集了数百条有关增强产品性能的需求信息,并根据这些信息在 Macromedia Flex 1.5 中,进一步增强了原有产品的诸多性能。
作为负责 Macromedia Flex 应用程序模型的软件工程主任,我将在此为大家简要介绍 Flex 1.5 中的新特性和增强功能。
Flex 1.5 的新特性和增强功能主要体现在以下几个方面:
丰富性
用户界面 (UI) /可用性
性能
我们已根据客户反馈更新了 Flex 的教学材料。同时改进了说明文档,基于开发人员的反馈进一步完善了相关内容。您将发现 ActionScript 和 MXML API Reference (通常称作 ASDoc) 已有显著改进,包含了更多可运行的完整样例和嵌入式代码示例。
您可在 Flex 开发人员中心 查阅产品的相关文章。我们已更新了许多有关 Flex 1.5 的说明文档。
最早的 Flex 用户,是那些期望软件具有高度交互性和表现力数据可视化功能的 Web 开发人员。自产品推出以来,用户对软件图表功能的需求持续增长。
我们在 Flex 1.5 产品中为用户提供了丰富的图表组件,这些组件自 1 月份以来已成为图表测试程序的组成部分。Flex 图表组件在测试程序中代码为“Tasty”,它支持七种常见的图表类型:面积图、条状图、泡泡图、柱型图、线型图、饼形图和区域图。
Flex 图表支持标准的 CSS 样式,用户可自定义界面设计,并实现由一系列不同事件触发的平滑过渡。在 《改进的数据网格:利用 Flex 图表组件更好地设计数据可视化界面*》 (Beyond DataGrids: Designing Better Data Visualization with Flex Charting Components) 中,用户可利用新增的 Flex 图表功能创建富于信息性和交互性的图表。
要了解新增的图表功能,请访问更新的 Explorer 示例*。
Flex 1.0 用户反映最强烈的问题可能就是它的列表支持性能。开发人员希望 Flex 1.0 的列表类控件更具有灵活性和可定制性。因此,我们在新版本软件中为用户提供了更多的扩展功能:可调节行高、换行和数据提示。通过在基于列表的类中加入此功能,从而使包含 DataGrid、ComboBox 的组件及标准列表组件可以继承这些性能。
我们扩展了现有的组件外观布局,除增强垂直的 List 组件外,还增加了 HorizontalList 和 TileList 组件。这三种布局配置 (List、HorizontalList 和 TileList) 都拥有相同的“虚拟”功能,即这些控件只加载出现在可见视图中的项目。这意味着开发人员可花费更少的时间,来考虑如何处理大数据集及其内存占用和加载速度变慢等问题。
使用 Flex 创建应用程序,可满足广泛的用户需求。我们根据客户意见,在 Flex 1.5 框架中新增了三种通用组件。我们将以前位于“Extras”文件夹中的 Slider 组件,迁移至标准应用程序模型中。我们并在 “Extras” 文件夹中增加了以下两个新组件:ColorPicker 组件和 ImageButton 组件。
Flex 1.0 为用户提供了强大的样式功能。在 Flex 1.5 中,我们充分考虑到用户对应用程序外观变化的需求,为开发人员定制应用程序外观提供更多可用的样式属性。这些新属性包含更多的边框样式;更多的按钮样式 (包括间隔、填充和转换颜色) ;以及具有活动标签外观的 Tab 属性。面板 (Panel) 容器通过增加投影和边框样式,为用户提供了更多的自定义功能。这些改进极大地简化了开发人员更改缺省应用程序外观所需的操作过程。
对于期望批量更改应用程序外观的 Flex 开发人员或 Flash 设计人员,我们尽力使其能够更加轻松地为应用程序换肤。我们为用户提供了大量的说明文档和两个完整的示例皮肤,一个皮肤是为使用 ActionScript、通过编程自己创建组件皮肤的 Flex 开发人员准备的,另一个皮肤则是为使用 Flash 创作工具、自己创建皮肤的 Flash 设计人员准备的。现在,用户可以更轻松地为 Flex 应用程序换肤。Flex 1.5 正式发布后,您将可以查看更新的说明文档和皮肤示例了。
最后,我们还重新设计了所有容器的调整大小功能,以支持基于百分比的编程概念和语法。这样做有两个好处:
此外,要了解如何使用渐进式布局控制 Flex 内容创建后的显示,可参阅 《使用渐进式布局创建 Flex 应用程序*》 (Building Flex Applications with Progressive Layout)。
升级至 Flex 1.5 后,Flex 应用程序的启动速度将比 Flex 1.0 快 30-40%。这些性能的提升,是由于采用了对象初始化和样式的 Flex 应用程序模型方法。开发人员应用这些方法,提高了 Flex 应用程序开发的效率。您的应用程序无需更改,即可利用这些性能的提升。
我们还特别注重所谓的“感觉性能”,并在 Flex 1.5 版本中增加了许多新功能。例如 Flex 1.5 可支持渐进式布局,利用此项功能,开发人员通过增加对象 CreationPolicy 属性中的控制粒度,以精确设计应用程序布局的初始化序列。
最后在 Flex 1.5 应用程序中,动画效果将显得更加平滑。您会看到复杂对象组 (常见于 Panel 组件中) 获得了更佳的显示效果。我们修改了调整大小效果的逻辑代码,使面板内容在动画开始时产生淡入淡出的效果,并在动画结束时再次出现,从而显著提高了应用程序的整体效果。
虽然我们目前已取得良好进展,但我们计划在以后版本的 Flex 和 Macromedia Flash Player 中,为用户提供更多的产品增强性能。
我们已更新了适用于 Flex 1.5 的 《增强 Flex 应用程序性能的技巧》 (Tips and Techniques for Improving Flex Application Performance) 一文。请参阅:《第 1 部分:Flex 客户端程序性能》* 和 《第 2 部分:Flex 服务器性能》*。
开发人员希望能够更好地控制应用程序代码的打包、交付和重复使用。因此,我们增强了 Flex 编译器和链接器,以支持运行时共享库 (RSL) 的定义和使用。有了 Flex 1.5,开发人员便可创建各种代码库 (MXML 组件、ActionScript 组件) 和资源,并编译和加入到自己的库中。
开发人员这样做,是为了能够在各种 Flex 应用程序中重复使用运行时共享库 (RSL) 。这样有许多好处。开发人员利用此功能,可集中管理各种应用程序共享的资源。此外,如果 Flex 应用程序链接的运行时共享库 (RSL) 已由其它 Flex 程序下载,则可利用 Flash Player 对 RSL 的支持 (在 Flash Player 5 中已提供支持) ,加快 Flex 程序下载和启动的速度。
如想了解如何利用运行时共享库提升 Flex 应用程序的性能,可参阅《使用运行时共享库》* (Using Runtime Shared Libraries)。
Flex 开发团队为 Flex 1.5 产品性能的增强感到自豪, 我们鼓励您在它推出时下载免费的试用版本 (报名等待通知*) 。我们的开发团队已着手开发更高性能的未来版本软件。我们期望获悉您开始用 Flex 1.5 开发应用程序的消息。通过与您不断的相互沟通,才能更好地指导我们今后的工作。
我们期望得到您的反馈!让我们在论坛上见...