小心掉进Flex应用陷阱

开发 后端
本文和大家分享一下Flex应用的常见误区,没有搭建企业生态系统就像其他的软件项目一样,为于你的Flex应用建立企业生态系统是非常重要的。

在学习Flex的过程中,你可能会遇到Flex应用的问题,这里向大家简单介绍一下Flex应用的常见误区,希望通过本文的介绍你对Flex有更深刻的认识。

Flex应用的常见误区

1.使用RIA框架去构建Web1.0应用(新技术换汤不换药)。从Web1.0到RIA的过渡中最大的挑战之一来自思考方式的转变。Flex给予开发者一个高级的组件库,使其可以完成很多以前不可能完成的任务。但是很多时候,Flex的这种能力被忽略了,它仅仅被用来实现更加传统的Web1.0应用。构建Web2.0应用不仅仅意味着页面的局部刷新和旋转的圆角图标。例如,Flex开发者应使用矢量图向用户提供数据的可视化表示,以及对于富应用流的高级控制。最近StephanJanssen:作为一个Java开发者,对于面向对象的ActionScript和UI标记语言的学习简直就是小菜一碟。但是对于(Java)开发者来说真正的挑战在于我们不是设计师,并且这两个技术对于RIA来说是必不可少的。

2.破坏标准的浏览器体验尽管Flex确实提供了一个优秀的平台以改善用户体验,但是保持用户习惯,如后退按钮、书签和自动完成也是相当重要的。Flex3包含了新的深层链接特性以支持后退按钮和书签。你可以访问来了解更多。那有很多组件能够实现自动完成。你可以使用来自于AdobeExchange的组件。

3.使用过多的容器导致Flex应用变慢FlashPlayer使用了一个按层次显示的对象图,这一点与HTML的文档对象模型(DOM)很相似。容器嵌套的层次越深,渲染所花费的时间就越长。Adobe的Flex开发者中心有一篇文章讨论了关于Flex性能的最佳实践,包括了容器的使用细节:Flex最大的性能风险来自于对容器的滥用。嵌套太多的容器会影响应用的性能。这是Flex开发者面临的最严重的性能风险——不过还好,它完全能被避免。

4.使用XML而不是其他更优化的协议导致应用变慢Flex向开发者提供了多种选择以在Flex客户端和服务器之间进行数据传输,包括AMF3、XML、SOAP及直接的HTTP请求。Ward在他的中阐述了这些技术的使用及性能。对于后端使用Java的新项目来说,应该考虑一下BlazeDS。BlazeDS是,它使用了AMF3协议。AMF是一个二进制传输协议,很容易与Java集成,其性能要优于XML。对于所有主要的后端技术都有相应的AMF开源实现。如果你不选择BlazeDS,那么你还可以选择Hessian。对二进制的webservices协议提供了ActionScript/Flex支持。

5.试图雇佣Flex开发者现在很难找到有经验的Flex开发者。Flex现在正处在上世纪90年代Java所处的位置。Flex开发者已经供不应求了。这就造成了难以寻觅到有经验的Flex开发者的后果。然而,这给Java开发者创造了一个很好的机会以扩充技能,并且从事一种新兴且有趣的技术。很多寻找Flex开发者的公司直接对Java或者其他web开发者进行几周的Flex培训,并且大获成功。对于熟悉Web和GUI编程的开发者来说,学习Flex语言和APIs易如反掌。

6.特效的过度使用开发者可以很容易地通过Flash增加特效。但是要确保特效有意义并且与上下文是匹配的。否则他们只会让用户反感。特效的时间选择也很重要。交互设计器可以帮助我们决定何时应使用特效,何时不应该使用。交互设计器还能为我们推荐最佳的特效类型、间隔和最简化的功能。关于特效的使用在上有一篇好文:大多数的特效简直太长了。它们不但长,而且还慢,甚至让人反感。关掉它。如果我遇到这种事情的话,我就会转身离去,因为我实在讨厌这种等待。千万不要误会我,我并不是反对特效。我只是反对为了目的而做的太长或者太过分的特效。每个特效都可以依照其目的进行分解。找到你要特效的目的,然后再使用它。

7.没有搭建企业生态系统就像其他的软件项目一样,为于你的Flex应用建立企业生态系统是非常重要的。测试驱动开发(TDD)在当前是大多数企业项目的首选方案。对于Flex来说,框架可用来编写单元测试。在Adobe的开发者网络上,。此外,可用来度量代码覆盖率。当多个开发者协同工作时,持续集成()被证明是良好的实践。与Java应用类似,也有相应的Ant和Maven插件对你的Flex应用进行持续集成。

8.没有使用整个框架在AdobeFlex中有大量可选的特性,你应该考虑在你的应用中使用它们。例如,运行时共享库(,即RSL)可用来减少应用的大小。你可以将共享资源集成到单独的文件中,这样就可以在客户端单独下载和缓存了,通过这种手段可以减少应用产生的SWF文件的大小。很多Flex应用可以在运行时加载这些共享资源,而每个客户端只需下载一次即可。这些共享资源叫做运行时共享库(RuntimeSharedLibraries)。框架的另一个特性是内建的辅助功能。你可以通过了解更多的关于Flex的辅助功能的信息。除了内建的辅助功能外,框架还提供了对于本地化的内在支持。请访问来了解最新的Flex3框架特性。

【编辑推荐】

  1. 专家提醒 小心掉进Flex应用的误区
  2. 深入探究Flex应用程序使用
  3. 解析Flex事件执行流程
  4. FlexBuilder3.0与Eclipse3.4的完美结合
  5. 学习笔记 FlexBuilder2.0中如何使用基于Lists的控件 

 

责任编辑:佚名 来源: csdn.net
相关推荐

2010-08-05 09:20:10

Flex应用

2010-06-29 19:37:43

UML建模误区

2010-07-28 13:31:10

Flex数据绑定

2020-09-28 13:57:37

区块链ICOLibra

2010-05-12 12:36:46

MySQL innod

2011-07-25 08:49:32

服务器整合虚拟化

2009-11-02 11:18:09

qq盗号

2009-12-22 20:45:00

圣诞购物钓鱼网站

2016-10-10 23:01:48

安全认证云供应商安全评估

2020-04-20 17:15:32

Java开发代码

2013-07-30 09:45:53

2012-11-22 13:04:47

钓鱼网站钓鱼梭子鱼

2023-12-04 09:37:00

C++静态变量

2011-03-07 10:10:35

MySQL处理空值

2019-04-26 12:29:04

云迁移数据

2010-08-02 09:43:00

Flex应用

2009-08-20 10:12:59

Flex Alert组

2015-03-31 14:15:12

JavaJava事件通知

2013-08-29 16:17:09

2010-08-10 10:46:19

点赞
收藏

51CTO技术栈公众号