本文主要介绍Flex开发者需要了解的内容,具有一定的参考价值。有兴趣的朋友可以参考一下。希望大家看完这篇文章后收获多多。让边肖带你去了解一下。
Flex开发者需要知道的10件事
不久前,MichaelPortuesi发表了一篇博文,内容是Flex开发人员需要知道的10件事。介绍了每个进入Flex领域的开发人员需要掌握的基本知识和技能。在MichaelPortuesi给出的10个项目中,有一些是开发人员需要了解的简单细节。其他人揭示了Flash/ActionScript/Flex和其他开发环境之间的区别。
如果你熟悉HTML/CSS和JavaScript,但是对ActionScript或者Flex一无所知,那么你应该花点时间学习面向对象编程,因为ActionScript是一种完整的面向对象编程语言,而Flex是一个面向对象的框架。
1.再简单的东西也是异步的
Flex是一个异步框架,所以我们永远不能期望代码在被调用后立即执行。事实上,我们无法预测方法的调用顺序。
2.搞清楚Flex组件的样式与属性
FlexUI组件(按钮、菜单等。)同时具有属性(由ActionScript语言指定)和样式(由Flex框架指定)。知道它们之间的区别是非常重要的,因为组件的一些视觉效果可以通过属性来指定,而其他的只能通过样式来设置。按属性指定:
button.width=100button.height=50
按样式指定:
MX : style button { color : # cc 0000;textRollOverColor: # ccff00fontFamily:TrebuchetMS}/MX : style MX : buttonidmx 3360 buttonid=' setup b ' text=' ClickMe ' click=' onSetup()'/3.Flex开发中的样式与HTML中的不尽相同
您可以使用标准的CSS样式表向Flex组件添加样式,也可以在Flex应用程序中包含CSS样式表。虽然标准CSS使用连字符格式(如文本字体)来定义样式名称,但Flex使用驼峰命名格式(如文本字体)。这是因为连字符不能出现在XML的属性中,所以不能将这样的名称用作MXML标签的属性。
当然,如果在外部CSS文件或样式标签中定义样式,也可以使用连字符样式名称。此外,Flex还定义了许多HTML中不存在的CSS样式。
4.尽管看起来不同,但MXML和ActionScript本质上是一回事
Flex中声明的所有MXML标签将被Flex编译器转换为ActionScript代码;当然,内联动作脚本代码也可以嵌入到MXML文件中。您可以使用MXML或动作脚本来创建新组件。
5.理解Flex开发的Code-behind模式
虽然MXML和动作脚本本质上是一样的,但他们各司其职。一般来说,MXML负责显示界面,而ActionScript用来完成功能。代码隐藏用来解耦MXML和ActionScript,这样设计人员不用读代码就可以直接修改MXML,程序员可以更好的组织和重用函数。
6.理解Flex组件的生命周期
通过Flex状态机机制,定义了一套* * *生命周期模型,用于组件的创建、运行和销毁,还定义了一些“门户”,开发者可以通过这些门户完成定制工作。未能完全理解组件的生命周期可能会导致错误的编程模型。
7.理解Flash运行时所使用的“跑道”模型
了解FlashPlayer的渲染和代码执行机制非常重要。在执行改变界面的指令时,FlashPlayer并不会立即在屏幕上显示你想要的内容,它会按照一定的周期刷新屏幕,代码的执行是另一回事。与Java相反,Java总是等待程序告诉它何时重绘屏幕。
8.理解数据绑定与查看器(Watcher)
Flex开发提供了一种数据绑定机制。简单来说,就是将一个源属性绑定到一个目标属性。当源属性改变时,目标属性也将改变。不仅可以绑定到属性,还可以绑定到函数。您甚至可以为属性创建一个Watcher,当属性发生变化时,您会收到一个事件通知。
9.数据封装与松耦合非常重要
代码组织和高层结构对于Flex和AIR项目非常重要。有些人实际上在一个文件中写了1000多行代码,这导致了一个事件会影响整个身体的问题。
10.理解ActionScript中的弱引用与强引用
无论使用何种语言和开发环境,内存管理始终是一个重要问题,ActionScript也不例外。如果不了解运行时环境的内存管理,很容易出现内存泄漏和内存碎片的问题。请阅读这篇博文和文章,了解更多关于ActionScript垃圾收集机制的信息。
感谢您仔细阅读本文。希望边肖分享的文章《Flex开发者需要知道什么》对大家有所帮助。同时希望大家多多支持,关注行业信息渠道,多了解!
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/133799.html