Flex开发者需要知道的10件事

开发
Flex 是一个高效、免费的开放源框架呢,可用于构建具有表现力的 Web 应用程序,这些应用程序利用 Adobe Flash Player 和 Adobe AIR, 运行时跨浏览器、桌面和操作系统实现一致的部署。本文为你介绍了Flex开发者需要知道的10件事,一起来看。

不久前,Michael Portuesi发表了一篇博文,谈到了Flex开发者需要知道的10件事。文章介绍了每个进入Flex领域的开发者都需要掌握的基本知识与技能。

Michael Portuesi给出的10个条目中,有些是开发者需要了解的简单细节信息;有些则揭示了Flash/ActionScript/Flex与其他开发环境之间的差别。

如果你了解HTML/CSS并熟悉JavaScript,但却对ActionScript或Flex一无所知的话,那么应该花些时间学习一下面向对象编程,因为ActionScript是一门完全的面向对象编程语言,而Flex则是一个面向对象的框架。

1. 再简单的东西也是异步的

Flex是一个异步框架,因此我们绝对不能指望代码调用后就能立刻执行。事实上,我们是无法预知方法的调用序列的。

2. 搞清楚Flex组件的样式与属性 

Flex UI组件(按钮、菜单等等)既有属性(通过ActionScript语言指定)也有样式(通过Flex框架指定)。搞清楚他们之间的区别是非常重要的,因为组件的某些可视化效果可以通过属性指定,但另一些却只能通过样式设定。通过属性指定:

  1. button.width = 100;   
  2. button.height = 50;  

通过样式指定:

  1. <mx:Style> 
  2. Button {   
  3. color: #cc0000;   
  4. textRollOverColor: #ccff00;   
  5. fontFamily: Trebuchet MS;   
  6. }   
  7. </mx:Style>   
  8. <mx:Button id="setupB" text="Click Me" click="onSetup()" /> 

3. Flex中的样式与HTML中的不尽相同 

可以使用标准的CSS样式表来为Flex组件添加样式,也可以在Flex应用中包含CSS样式表。虽然标准CSS使用连字符(例如text-font)格式来定义样式名称,但是Flex使用驼峰式的命名格式(例如textFont)。这是因为连字符不能出现在XML的属性中,所以不能用这样的名字作为MXML标签的属性。

当然了,如果把样式定义在外部的CSS文件中或者Style标签中,也可以使用连字符格式的样式名。此外,Flex还定义了很多HTML中不存在的CSS样式。

4. 尽管看起来不同,但MXML和ActionScript本质上是一回事

在Flex中声明的所有MXML标签都会被Flex编译器转换为ActionScript代码;当然了,也可以在MXML文件中嵌入内联的ActionScript代码。既可以使用MXML也可以使用ActionScript创建新组件。

5. 理解Flex的Code-behind模式

虽然MXML和ActionScript本质上是一样的,但他们各司其职。一般来说,MXML负责显示界面,而ActionScript用来完成功能。Code-behind用于解耦MXML和ActionScript,这样设计师可以直接修改MXML而无需阅读代码,程序员则可以更好地组织和重用功能。

6. 理解Flex组件的生命周期

Flex通过状态机机制定义了一套***的生命周期模型,用于组件的创建、运行和销毁,还定义了一些“入口”,开发者可以借此完成定制化的工作。没有透彻理解组件的生命周期可能会导致错误的编程模型。

7. 理解Flash运行时所使用的“跑道”模型

理解Flash Player的渲染和代码执行机制非常重要的。在执行了改变界面的指令时,Flash Player并不是立刻把你要的内容显示在屏幕上,它根据一定的周期来刷新屏幕,而代码的执行则是另一回事。这和Java正好相反,Java总是等待程序主动告诉它什么时候重绘屏幕。

8. 理解数据绑定与查看器(Watcher) 

Flex提供了一种数据绑定机制。简单地说,就是将一个源属性绑定到一个目标属性上,当源属性发生变化时,目标属性也会随之变化。不仅仅可以绑定到属性,还可以绑定到函数。甚至可以为某个属性创建一个Watcher,当属性变化时会获得事件通知。

9. 数据封装与松耦合非常重要

对于Flex和AIR项目来说,代码组织与高层结构非常重要。有些人竟然在一个文件中编写了1000多行代码,这导致的问题就是牵一发而动全身。

10. 理解ActionScript中的弱引用与强引用

不管使用何种语言与开发环境,内存管理始终是一个重要的问题,ActionScript也不例外。如果不理解运行时环境的内存管理,那么很容易就会出现内存泄露与内存碎片问题。请阅读这篇博文及文章来深入了解ActionScript的垃圾收集机制。

本文来自:http://www.infoq.com/cn/news/2010/02/Flex-ten-things

【编辑推荐】

  1. 创建一个Flex应用程序简明步骤
  2. 深入剖析Flex字体样式定义方法
  3. Flex调用Webservice实现天气预报
  4. 老Web前端设计者谈对div绝对定位的心得
责任编辑:于铁 来源: InfoQ
相关推荐

2010-03-01 10:20:27

Flex

2010-07-28 14:21:43

Flex

2010-07-30 16:27:06

Flex开发

2019-11-23 23:38:51

开发者微服务安全

2020-06-16 09:13:27

数据科学数据大数据

2010-11-16 17:16:36

IPv6IPv4

2017-05-27 14:24:50

思科黄金认证Cisco Globa

2020-12-31 23:38:33

AIOpsIT运营

2023-10-16 13:36:00

边缘计算数据

2021-04-15 08:04:27

容器DevOps程序

2015-09-02 10:12:17

数据安全云存储

2017-02-20 10:12:20

云计算

2020-03-05 17:50:00

智慧社区智能

2022-10-21 14:01:35

边缘计算IT数据中心

2021-11-11 13:39:53

存储数据存储技术

2015-08-11 17:55:21

谷歌重组科技

2014-04-09 11:19:12

创业创业前期

2010-07-27 11:24:51

Flex

2018-04-17 14:44:26

工业物联网IIoT物联网

2019-12-16 11:09:17

物联网IOT技术
点赞
收藏

51CTO技术栈公众号