不久前,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框架指定)。搞清楚他们之间的区别是非常重要的,因为组件的某些可视化效果可以通过属性指定,但另一些却只能通过样式设定。通过属性指定:
button.width = 100;
button.height = 50;
通过样式指定:
<mx:Style>
Button {
color: #cc0000;
textRollOverColor: #ccff00;
fontFamily: Trebuchet MS;
}
</mx:Style>
<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的垃圾收集机制。
thanks : http://www.infoq.com/cn/news/2010/02/Flex-ten-things
分享到:
相关推荐
一名优秀Flex开发者需要知道的十样东西
flex3开发者指南Flex3 developer guide.rar
PHP开发者的Flex入门指南 是一篇不错的学习总结.
Flex 开发者学习和进阶过程探讨,在RIAMeeting找到这份PDF文档,觉得挺不错的,至少让我了解了自己目前所处的阶段
让开发者快速了解flex,简单的小案例,能清晰高效的了解flex,让初学这早日学会
一线城市Flash&Flex开发者薪资水平调查(2010年9月).pdf
两年的的flex开发,常用功能做成了各个小例子,基本上包含了其中包含的功能有:系统框架,布局控件,菜单控制,分组栏,收缩控件,Excel导出,统计图,下载,分页等常用常用功能,其中还有一个自己写的分栏收缩控件...
NULL 博文链接:https://windmark.iteye.com/blog/1709889
flex、flash及air等ios开发证书(P12格式) 压缩包内含两个文件: ...用Flex Builder以学习IOS编程时,需要在Flex中将对应工程的描述文件XX-app.xml中的id改为:com.gamevil.zenonia2,证书密码:1234 XX是工程名。
ios开发者证书,flex,flash,air手机开发使用,输出越狱版的ipa的利器
flex、flash及air等ios开发证书(P12格式) 压缩包内含三个文件: ios.p12(ios开发证书) mobileprovision.mobileprovision(配置文件) flash ios 设置顺序.doc 是对我们的flash开发ios的一些设置问题 如果 ...
Flex 4.0 Flex 4.5 API 开发者必备工具 适合从事Flex开发者,和学者
Flex 对开发者更具吸引力,而 Flash 更多的是吸引设计人员。 Flex 原理 当你编译一个 Flash 程序时,Flash 开发环境把所有的可视化元素,时间轴指令和 ActionScript 中的业务逻辑编译为 SWF 文件。 同样地,Flex ...
《Flex与ActionScript 3程序开发》适合广大的Flex初学者、Web应用开发者、在校学生等对Flex技术的入门与提高,也特别适合于中高级Flex开发人员作为实际开发时的代码备查手册。 编辑推荐 《Flex与ActionScript 3程序...
Flex是Adobe公司开发的支持RIA(Rich Internet Applications)开发和部署的...对于初识Flex的开发者,总是对Flex产生不同的疑问,什么是RIA?什么是Flex?Flex有哪些特点。本章将带着着这些问题RIA和Flex进行简要的介绍
本书主体分为5个部分,分别从基础知识、视觉设计、组件高级技法、性能...本书适合广大的Flex初学者、Web应用开发者、在校学生等对Flex技术的入门与提高,也特别适合于中高级Flex开发人员作为实际开发时的代码备查手册。