构建Flex应用时常见几大误区解析

开发 后端
本文向大家介绍一下构建Flex应用的几大误区,Flex是一个强大易用的框架,但是今天让我们瞧瞧构建Flex应用时经常犯的错误。

本文和大家重点讨论一下构建Flex应用的几大误区,Flex是一个开源的应用开发框架,用来构建运行在 web(使用 Flash Player)或者桌面上(使用Adobe AIR)的富Internet应用,但是今天让我们瞧瞧构建Flex应用时经常犯的错误。

构建Flex应用的几大误区

在这篇新闻中,Adobe的James Ward与InfoQ.com一起为你带来了Flex的另一种10大(Flex***的10大)。Flex是一个开源的应用开发框架,用来构建运行在 web(使用 Flash Player)或者桌面上(使用Adobe AIR)的富Internet应用。总之,Flex是一个强大易用的框架,但是今天让我们瞧瞧构建Flex应用时经常犯的错误。

对于Flex新手,请阅读InfoQ最近的Adobe Flex Basics以对该框架有一个快速的了解。下面是易犯的错误列表:

1. 使用RIA框架去构建Web1.0应用(新技术换汤不换药)

从Web 1.0到RIA的过渡中***的挑战之一来自思考方式的转变。Flex给予开发者一个高级的组件库,使其可以完成很多以前不可能完成的任务。但是很多时候,Flex的这种能力被忽略了,它仅仅被用来实现更加传统的Web 1.0应用。

构建Web 2.0应用不仅仅意味着页面的局部刷新和旋转的圆角图标。例如,Flex开发者应使用矢量图向用户提供数据的可视化表示,以及对于富应用流的高级控制。最近Stephan Janssen与InfoQ.com一起讨论了该议题:

作为一个Java开发者,对于面向对象的ActionScript和UI标记语言的学习简直就是小菜一碟。但是对于(Java)开发者来说真正的挑战在于我们不是设计师,并且这两个技术对于RIA来说是必不可少的。

2. 破坏标准的浏览器体验

尽管Flex确实提供了一个优秀的平台以改善用户体验,但是保持用户习惯,如后退按钮、书签和自动完成也是相当重要的。

Flex 3包含了新的深层链接特性以支持后退按钮和书签。你可以访问labs.adobe.com来了解更多。那有很多组件能够实现自动完成。你可以使用来自于Adobe Exchange的AutoComplete Input组件。

3. 使用过多的容器导致Flex应用变慢

Flash Player使用了一个按层次显示的对象图,这一点与HTML的文档对象模型(DOM)很相似。容器嵌套的层次越深,渲染所花费的时间就越长。Adobe的Flex开发者中心有一篇文章讨论了关于Flex性能的***实践,包括了容器的使用细节:

Flex***的性能风险来自于对容器的滥用。嵌套太多的容器会影响应用的性能。这是Flex开发者面临的最严重的性能风险——不过还好,它完全能被避免。

4. 使用XML而不是其他更优化的协议导致Flex应用变慢

Flex向开发者提供了多种选择以在Flex客户端和服务器之间进行数据传输,包括AMF3、XML、SOAP及直接的HTTP请求。Ward在他的人口普查应用中阐述了这些技术的使用及性能。

对于后端使用Java的新项目来说,应该考虑一下BlazeDS。BlazeDS是Adobe最近的一个开源数据服务产品,它使用了AMF3协议。AMF是一个二进制传输协议,很容易与Java集成,其性能要优于XML。对于所有主要的后端技术都有相应的AMF开源实现。

如果你不选择BlazeDS,那么你还可以选择Hessian。Hessian对二进制的web services协议提供了ActionScript/Flex支持。

5. 试图雇佣Flex开发者

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

6. 特效的过度使用

开发者可以很容易地通过Flash增加特效。但是要确保特效有意义并且与上下文是匹配的。否则他们只会让用户反感。特效的时间选择也很重要。交互设计器可以帮助我们决定何时应使用特效,何时不应该使用。交互设计器还能为我们推荐***的特效类型、间隔和最简化的功能。

关于特效的使用在laair.org上有一篇好文:

大多数的特效简直太长了。它们不但长,而且还慢,甚至让人反感。关掉它。如果我遇到这种事情的话,我就会转身离去,因为我实在讨厌这种等待。

千万不要误会我,我并不是反对特效。我只是反对为了目的而做的太长或者太过分的特效。每个特效都可以依照其目的进行分解。找到你要特效的目的,然后再使用它。

【编辑推荐】

  1. 解析构建Flex应用的10大误区
  2. 解析Flex应用开发步骤和技术框架
  3. 技术前沿 看Flex客户端缓存技术如何使用
  4. 解析Flex全屏模式设置方法
  5. Flex内存泄露解决方法和内存释放优化原则
责任编辑:佚名 来源: csdn.net
相关推荐

2010-08-12 11:12:27

Flex误区

2010-07-30 14:32:50

Flex应用

2010-07-28 09:10:41

Flex2.0

2010-08-11 10:32:00

AdobeFlex

2010-08-31 16:01:18

CSS

2010-08-05 09:20:10

Flex应用

2010-08-02 09:43:00

Flex应用

2015-06-01 16:53:01

综合布线

2020-10-20 08:00:29

AWS云安全数据安全

2021-06-21 10:57:12

曙光

2010-07-28 09:35:23

Flex加载图片

2012-06-01 09:25:12

imo即时通讯IM

2010-08-13 13:31:48

Flex效果组件

2010-08-04 15:12:54

Flex开发

2010-07-29 10:40:12

2010-08-06 15:11:44

Flex界面控件

2010-07-27 10:58:46

Flex

2020-12-26 15:19:00

DevOps误区开发

2010-08-05 10:58:55

Flex组件

2015-07-15 11:31:49

Docker云服务镜像构建
点赞
收藏

51CTO技术栈公众号