flex开发者必须知道的十件事
flex应用于表现层,基于flash平台,涵盖了支持RIA开发和部署的一系列组合,是目前主流的RIA技术之一。其中值得一提的as,as是一门完全面向对象的编程语言。而flex则是面向对象的框架。
1.异步
关于异步暂不多做解释。
2.flex 组建的样式与属性
flexUI组建(按钮、菜单等等)既有属性(通过as指定)也有样式(通过flex框架指定)组 件的某些可视化效果有些可以通过属性指定,有些只能通过样式指定。
通过属性指定:
button:width=100;button.height=50;
通过样式指定
<mx:Style>Button {color:#cc0000;textRollOverColor:#ccff00;fontFamility:TrebuchetMS;}
3.flex中的样式与html中的样式相同
可以使用标准的css样式表为flex组建添加样式,也可以在flex应用中包含css样式表,标准的css样式使用(text-fout)来指定样式名称,flex使用驼峰式来指定(textFont),因为连字符不能出现在xml属性中,所以不能用这样的名字作为mxml标签的属性。如果定义在css外部文件或者style标签中,是没有顾忌的。另外mxml还定义了很多html中不存在的css样式。
4.尽管看起来不同,但是mxml和as 在本质上是同一回事。
在flex中声明的所有的mxml标签都会被flex编译器转换成as代码。当然了,也可以在mxml嵌入内联的as代码,即可以使用mxml也可以使用as创建新的组建。
5.flex的code-behind 模式
虽然mxml和as本质上是一样的,但是他们各司其职。mxml负责显示界面,as用来完成功能。code-behind用于解耦mxml和as,这样设计师就可以直接修改mxml而无需阅读代码,程序员则可以更好的组织和重用功能。
6.理解flex的声明周期
flex定制了一套完整的生命周期模型,用于组建的创建、运行、销毁 还定制了一些入口,开发者可以完成定制的工作。
7.理解flash运行时所使用的跑道模型
理解flashplayer的渲染和代码执行机制,在执行改变界面的指令时,flashplayer并不是立刻把你的内容显示在屏幕上,他根据一定的周期来刷新屏幕,而代码的执行则是另外一回事。java恰好相反,java总是等待程序告诉它什么时候会重绘屏幕。
8.理解数据绑定和查看器(watcher)
flex 提供了一种数据绑定机制,简单的说就是将一个源属性绑定到另一个目标属性上。当源属性发生变化时,目标属性也会随之变化,不仅可以绑定属性也可以绑定函数,甚至可以为属性创建一个watcher,当属性变化时会获得一个通知。
9.数据封装与松耦合
10.理解as中的弱引用与强引用。
不管使用何种语言何种开发环境,内存管理始终是一个重要的问题。关注flex内存管理。