2023年6月21日发(作者:)
Flex组成、变量、函数、命名空间Adobe? Flex?是Adobe公司的多平台的RIA(Rich Internet Applications)开发产品RIA全称为“Rich Internet Application”,其意思为“富互联⽹应⽤程序”。它具有⾼度的⽤户互动性和丰富的⽤户体验Adobe公司的Flex是⼀个安装在客户端的表现层的服务器;Flex表现层服务器包含了Flex应⽤框架和Flex运⾏服务。Flex框架⼜包含了MXML描述语⾔,ActionScript程序语和Flex类库。Flex应⽤需要⾄少⼀个的MXML⽂件或ActionScript类⽂件来构成Flex应⽤的源程序。Flex Builder:Flex Builder是Adobe格式官⽅发布的IDE(集成开发系统),⽤来构建在开源的Eclipse IDE上,使⽤Flex的MXML和ActionScript技术,⽤来进⾏Flex书写和调试与Live Cycle Data Service(LCDS)集成:LCDS是Flex应⽤的重要组成部分,简单的说,其作⽤在于Flex应⽤与数据层之间的发送和获取数据多数传统技术包含了⾄少三层的结构:⼀个数据层(Data Tier),⼀个业务层(Business Tier),⼀个表现层(Presentation Tier)。数据层通常指数据库或数据源。业务层指应⽤核⼼的业务逻辑部分。Flex⾸先包含了⼀个数据层(Data Tier)和⼀个业务层(Business Tier),数据层和业务层中间的集成层(Integration Tier),表现层(Presentation Tier)。与传统技术不同的是,Flex还有⼀层客户层(Client Tier),这是与传统⽹页技术完全不同的⼀个层⾯。Flex的客户层允许⽤户可以脱离服务器的⼯作,不受⽹络的限制,并且与⽤户更好的互动。MXMLMXML是⼀种XML语⾔,最基本的作⽤是⽤来布局Flex应⽤程序的⽤户界⾯。MXML也可以⽤来定义不可视的Flex应⽤。例如,它可以定义数据源,并将数据源绑定到⽤户界⾯。MXML类似于HTML,它也提供各种标签来定义⽤户界⾯MXML标签不仅包括可视的标签,如数据表格(DataGrid)、树结构(Tree)、菜单(Menu)等;它还包括不可视的标签,如Web Service连接、数据绑定、动画效果等。⽤户还可以将⽤户⾃定义的组件,定义为⼀个MXML标签。MXML和HTML最⼤区别在于MXML定义的应⽤程序,需要被编译成SWF⽂件,并在Flash Player上运⾏。定义XML编码格式
le("fontFamily", "Tahoma");有些MXML标签的属性可以设定为URL的值。例如,在
动态的路径:它与Flex运⾏根路径有关。⽰例如下。
编译时的路径:它与Flex运⾏根路径有关。⽰例如下。
没有定义变量类型在ActionScript中是合法的,但会给出⼀个警告信息。定义⼀个整数类型的变量代码如下所⽰。var index:int; //定义⼀个整数类型变量。⼀个全局(global)变量是在任何函数之外声明的变量,它在整个代码中都可以引⽤和修改。与之相对的是局部(local)变量,它是在函数内部被定义,只在这⼀部分代码中可以被引⽤和修改的变量。在ActionScript中,变量的作⽤范围就是在其中定义此变量的函数或类。全局变量则是在函数和类之外定义的变量。ActionScrpt使⽤const声明,⽤来建⽴常量。常量只能被赋值⼀次。常量的必须在声明的范围内被赋值var numArray:Array = ["zero", "one", "two"]; //定义⼀个数组。数据类型检查可以在编译时间或运⾏时间进⾏。静态语⾔,如C++或Java是在编译时间进⾏检查;动态语⾔,如Python是在运⾏时间进⾏检查。 ActionScript做为⼀种动态的语⾔,也是在运⾏时间进⾏检查,但它也⽀持在编译时间进⾏检查。当定义编译器的模式为严格模式(strict mode)时,⽀持在编译和运⾏时的类型检查。在普通模式下,⽀持运⾏时的类型检查。is操作符是ActionScript新的操作符,⽤来测试变量或表达式数据类型。下述的⽰例建⽴⼀个Sprite类的实例,命名为mySprite。代码⾸先使⽤is来检查mySprite是否为Sprite和DisplayObject类的⼀个实例,然后检查它是否为IEventDispatcher interface的⼀个成员。var mySprite:Sprite = new Sprite();
trace (mySprite is Sprite); //输出: truetrace (mySprite is DisplayObject); //输出: true
trace (mySprite is IEventDispatcher); //输出: trueas操作符是ActionScript新的操作符,⽤来测试表达式是否是给定的数据类型的成员。与is操作符不同的是,as操作符不返回布尔值,⽽是返回表达式的值。下述的⽰例使⽤as操作符代替is操作符,以测试Sprite实例是否是⼀个DisplayObject和IEventDispather数据类型的成员。var mySprite:Sprite = new Sprite();
trace (mySprite as Sprite); //输出: 〔object Sprite〕trace (mySprite as DisplayObject); //输出: 〔object Sprite〕trace (mySprite as IEventDispatcher); //输出: 〔object Sprite〕类型转换是指将数据从⼀个数据类型转换为其他数据类型。类型转换可以是隐含的(implicit)和不隐含的(explicit)。隐含的转换也称为强制的(coercion),在运⾏时使⽤。例如,如果给⼀个布尔类型的变量赋值为“2”,编译器则转换布尔数值为true。不隐含的转换也称为转型(casting),在编译时改变变量类型所使⽤。语法如下代码所⽰。var myBoolean:Boolean = true;var myINT:int = int(myBoolean);
trace(myINT); //输出: 1如果⼀个函数是⼀个类的⼀部分,或者是依附于⼀个对象实例,被称为⽅法。其他的⽅式称为函数closure使⽤return声明在函数中返回数值,return后⾯可以跟随⼀个值或者⼀个表达式。下⾯的⽰例显⽰了函数返回⼀个表达式所产⽣的值,代码如下所⽰。function doubleNum(baseNum:int):int {return (baseNum * 2);}包和命名空间是相关的概念,包允许编程者将类打包到⼀起,帮助实现代码分享和减⼩命名的冲突,同时帮助管理类⽂件。命名空间允许编程者控制每个对象的可视性。在ActionScript中,包是由命名空间来实现的,但它们不是同义词。当定义⼀个包时,就要建⽴⼀个特定类型的命名空间,保证在编译时能被识别。当命名空间直接建⽴时,不需要在编译时被识别。ActionScript提供了⾮常灵活的⽅法来组织包,类和源⽂件。ActionScript允许建⽴多个类在⼀个源⽂件中,但每个⽂件中只有⼀个类可以在包中被声明。在包中的类的名称必须和⽂件名⼀致。在ActionScript中使⽤package语句来声明包。其语法⽰例如下所⽰:package ⽂件包名 {
public class 类名 {}}如果需要使⽤包中的⼀个类,就必须要输⼊包或者特定的类。⽰例代码如下所⽰。import samples.*; //输⼊samples类如果只需要使⽤包中的⼀个类,建议使⽤下⾯的⽤法。因为输⼊整个包可能会引起⽂件名冲突。import Code;命名空间⽤来控制编程者建⽴的属性和⽅法的可视性。使⽤ActionScript命名空间有以下三个基本的步骤。(1)使⽤namespace关键词来定义命名空间,代码如下所⽰。namespace vsersion1;
(2)在定义属性和⽅法时使⽤命名空间,代码如下所⽰。version1 function myFunction () {};(3)当使⽤了命名空间,就可以使⽤use来引⽤命名空间,代码如下所⽰。use namespace version1;
myFunction();使⽤MXML⽂件中,⽤户可以使⽤
...
]]>
2023年6月21日发(作者:)
Flex组成、变量、函数、命名空间Adobe? Flex?是Adobe公司的多平台的RIA(Rich Internet Applications)开发产品RIA全称为“Rich Internet Application”,其意思为“富互联⽹应⽤程序”。它具有⾼度的⽤户互动性和丰富的⽤户体验Adobe公司的Flex是⼀个安装在客户端的表现层的服务器;Flex表现层服务器包含了Flex应⽤框架和Flex运⾏服务。Flex框架⼜包含了MXML描述语⾔,ActionScript程序语和Flex类库。Flex应⽤需要⾄少⼀个的MXML⽂件或ActionScript类⽂件来构成Flex应⽤的源程序。Flex Builder:Flex Builder是Adobe格式官⽅发布的IDE(集成开发系统),⽤来构建在开源的Eclipse IDE上,使⽤Flex的MXML和ActionScript技术,⽤来进⾏Flex书写和调试与Live Cycle Data Service(LCDS)集成:LCDS是Flex应⽤的重要组成部分,简单的说,其作⽤在于Flex应⽤与数据层之间的发送和获取数据多数传统技术包含了⾄少三层的结构:⼀个数据层(Data Tier),⼀个业务层(Business Tier),⼀个表现层(Presentation Tier)。数据层通常指数据库或数据源。业务层指应⽤核⼼的业务逻辑部分。Flex⾸先包含了⼀个数据层(Data Tier)和⼀个业务层(Business Tier),数据层和业务层中间的集成层(Integration Tier),表现层(Presentation Tier)。与传统技术不同的是,Flex还有⼀层客户层(Client Tier),这是与传统⽹页技术完全不同的⼀个层⾯。Flex的客户层允许⽤户可以脱离服务器的⼯作,不受⽹络的限制,并且与⽤户更好的互动。MXMLMXML是⼀种XML语⾔,最基本的作⽤是⽤来布局Flex应⽤程序的⽤户界⾯。MXML也可以⽤来定义不可视的Flex应⽤。例如,它可以定义数据源,并将数据源绑定到⽤户界⾯。MXML类似于HTML,它也提供各种标签来定义⽤户界⾯MXML标签不仅包括可视的标签,如数据表格(DataGrid)、树结构(Tree)、菜单(Menu)等;它还包括不可视的标签,如Web Service连接、数据绑定、动画效果等。⽤户还可以将⽤户⾃定义的组件,定义为⼀个MXML标签。MXML和HTML最⼤区别在于MXML定义的应⽤程序,需要被编译成SWF⽂件,并在Flash Player上运⾏。定义XML编码格式
le("fontFamily", "Tahoma");有些MXML标签的属性可以设定为URL的值。例如,在
动态的路径:它与Flex运⾏根路径有关。⽰例如下。
编译时的路径:它与Flex运⾏根路径有关。⽰例如下。
没有定义变量类型在ActionScript中是合法的,但会给出⼀个警告信息。定义⼀个整数类型的变量代码如下所⽰。var index:int; //定义⼀个整数类型变量。⼀个全局(global)变量是在任何函数之外声明的变量,它在整个代码中都可以引⽤和修改。与之相对的是局部(local)变量,它是在函数内部被定义,只在这⼀部分代码中可以被引⽤和修改的变量。在ActionScript中,变量的作⽤范围就是在其中定义此变量的函数或类。全局变量则是在函数和类之外定义的变量。ActionScrpt使⽤const声明,⽤来建⽴常量。常量只能被赋值⼀次。常量的必须在声明的范围内被赋值var numArray:Array = ["zero", "one", "two"]; //定义⼀个数组。数据类型检查可以在编译时间或运⾏时间进⾏。静态语⾔,如C++或Java是在编译时间进⾏检查;动态语⾔,如Python是在运⾏时间进⾏检查。 ActionScript做为⼀种动态的语⾔,也是在运⾏时间进⾏检查,但它也⽀持在编译时间进⾏检查。当定义编译器的模式为严格模式(strict mode)时,⽀持在编译和运⾏时的类型检查。在普通模式下,⽀持运⾏时的类型检查。is操作符是ActionScript新的操作符,⽤来测试变量或表达式数据类型。下述的⽰例建⽴⼀个Sprite类的实例,命名为mySprite。代码⾸先使⽤is来检查mySprite是否为Sprite和DisplayObject类的⼀个实例,然后检查它是否为IEventDispatcher interface的⼀个成员。var mySprite:Sprite = new Sprite();
trace (mySprite is Sprite); //输出: truetrace (mySprite is DisplayObject); //输出: true
trace (mySprite is IEventDispatcher); //输出: trueas操作符是ActionScript新的操作符,⽤来测试表达式是否是给定的数据类型的成员。与is操作符不同的是,as操作符不返回布尔值,⽽是返回表达式的值。下述的⽰例使⽤as操作符代替is操作符,以测试Sprite实例是否是⼀个DisplayObject和IEventDispather数据类型的成员。var mySprite:Sprite = new Sprite();
trace (mySprite as Sprite); //输出: 〔object Sprite〕trace (mySprite as DisplayObject); //输出: 〔object Sprite〕trace (mySprite as IEventDispatcher); //输出: 〔object Sprite〕类型转换是指将数据从⼀个数据类型转换为其他数据类型。类型转换可以是隐含的(implicit)和不隐含的(explicit)。隐含的转换也称为强制的(coercion),在运⾏时使⽤。例如,如果给⼀个布尔类型的变量赋值为“2”,编译器则转换布尔数值为true。不隐含的转换也称为转型(casting),在编译时改变变量类型所使⽤。语法如下代码所⽰。var myBoolean:Boolean = true;var myINT:int = int(myBoolean);
trace(myINT); //输出: 1如果⼀个函数是⼀个类的⼀部分,或者是依附于⼀个对象实例,被称为⽅法。其他的⽅式称为函数closure使⽤return声明在函数中返回数值,return后⾯可以跟随⼀个值或者⼀个表达式。下⾯的⽰例显⽰了函数返回⼀个表达式所产⽣的值,代码如下所⽰。function doubleNum(baseNum:int):int {return (baseNum * 2);}包和命名空间是相关的概念,包允许编程者将类打包到⼀起,帮助实现代码分享和减⼩命名的冲突,同时帮助管理类⽂件。命名空间允许编程者控制每个对象的可视性。在ActionScript中,包是由命名空间来实现的,但它们不是同义词。当定义⼀个包时,就要建⽴⼀个特定类型的命名空间,保证在编译时能被识别。当命名空间直接建⽴时,不需要在编译时被识别。ActionScript提供了⾮常灵活的⽅法来组织包,类和源⽂件。ActionScript允许建⽴多个类在⼀个源⽂件中,但每个⽂件中只有⼀个类可以在包中被声明。在包中的类的名称必须和⽂件名⼀致。在ActionScript中使⽤package语句来声明包。其语法⽰例如下所⽰:package ⽂件包名 {
public class 类名 {}}如果需要使⽤包中的⼀个类,就必须要输⼊包或者特定的类。⽰例代码如下所⽰。import samples.*; //输⼊samples类如果只需要使⽤包中的⼀个类,建议使⽤下⾯的⽤法。因为输⼊整个包可能会引起⽂件名冲突。import Code;命名空间⽤来控制编程者建⽴的属性和⽅法的可视性。使⽤ActionScript命名空间有以下三个基本的步骤。(1)使⽤namespace关键词来定义命名空间,代码如下所⽰。namespace vsersion1;
(2)在定义属性和⽅法时使⽤命名空间,代码如下所⽰。version1 function myFunction () {};(3)当使⽤了命名空间,就可以使⽤use来引⽤命名空间,代码如下所⽰。use namespace version1;
myFunction();使⽤MXML⽂件中,⽤户可以使⽤
...
]]>
发布评论