我的Flex我精通

出版社:李庆、 沈钧 电子工业出版社 (2009-04出版)
出版日期:2009-4
ISBN:9787121083143
页数:691页

章节摘录

插图:第1章认识Flex 作为本书的第1章,简单介绍一下Flex 3是必要的。从基本概念到系统要求、开发环境设置及Flex 3标志性的标签语言MXML都会一一介绍,随后介绍使用Flex Builder 3可以创建的4种类型的应用,最后介绍一些简单的调试方法。本章介绍的内容都是相对基础的,但不会去介绍软件的安装、Flex的历史等内容。介绍Flex创建的几种项目中用到的例子,此时可能还有很多地方对初学者来说有点不容易理解,因为例子中用到了很多后面的知识,没有关系,这里先有一个概念,等在以后的学习中了解到了相关知识再回头看时,会发现本章用到的例子都是相当基础的。1.1 Flex简介作为开篇第1章第l节,当然得简单介绍一下Flex,什么是Flex?Flex和Flash的区别。相信大部分读者都会抱着这样的疑问开始Flex的学习。1.1.1什么是Flex当你拿起这本书的时候,一定是对Flex已经有了一点了解,或者别人告诉你Flex如何如何的好,知道它是做什么的或者说能做什么,但明确地定义什么是Flex,确实不容易。Flex是Adobe公司一种支持RIA(Rich Internet Applications,丰富因特网应用)开发和部署的一系列发展中的技术和产品线的概括词,这其中包括Flex应用框架、Flex Builder、Flex企业服务等。这样定义似乎不能说明什么,那么就从技术实现上来说,Flex就是使用Action Script脚本语言和MXML标签语言制作SWF类型的应用。有些SWF是被浏览器加载并运行在网络环境中的,这种就叫RIA(富互联网应用);有些则是在本地加载并直接运行在本地机器上的,这种就叫做AIR。AIR也只是一种概念,字面意思是Adobe综合运行时,通俗点的AIR就是运行在本地的应用程序。不管是RIA还是AIR,实际上都是运行在Flash Player中的SWF文件。

前言

首先感谢作为读者的您打开这本书,开始了Flex学习之旅。关于FlexFlex是Adobe进军企业级Internet应用的重要工具,从Macromedia发布Flex 1.0以来,直到现在Flex 3.0的升级,无不体现着这一目标。使用Flex开发的应用最终会编译为SWF类型的文件,使得Flex应用在部署上有着跨平台的先天优势,从而使开发人员不必花费大量精力为不同浏览器编写不同的代码。另外由于ActionScript 3.0是一种面向对象的编程语言,有一定编程基础的开发人员可以很快学习并掌握,而Flex提供的丰富且功能强大的组件也能够让开发过程更加规范和高效。当前Internet应用的方向正向着RIA(Rich Internet Application,富互联网应用)发展,出色的RIA网站层出不穷。实现RIA的技术也有很多,如AJAX、Flash/Flex、SilverLight、JavaFX等。尽管现在还无法得知最终统治这个领域的技术会是哪个,也许会一直竞争下去,但对希望致力于开发Internet应用的人员来说,掌握其中的一种技术是很有必要的。本书将对使用Flex进行RIA开发的方方面面进行详细介绍。Flex和Flash的关系Flex和Flash有着千丝万缕的关系,Flash作为一种矢量动画编辑工具,在引入了ActionScript 3以后,俨然也成为了一种开发RIA的有效工具。熟练运用Flash是完全可以做到和使用Flex进行RIA开发同样的效果。但Flex已经不是一个单纯的工具,更深层次地说,Flex更像一种框架,利用MXML描述界面和ActionScript实现行为,这样的模式对开发者来说是非常熟悉不过的,而Flash的使用,更多是倾向设计者。尽管Flash和Flex在本质上是相同的,但开发RIA的工具还是首选Flex。Flex Builder或者安装了Flex插件的Eclipse都是很好的IDE环境,它们可以提供项目开发过程中需要的种种便利条件,包括编译、调试、关键字高亮、语法检查等。本书中的实例均是使用Flex Builder 3开发并调试通过的。

内容概要

李庆,毕业于中国科技大学,学士学位。从事商业软件开发7年,精通数据库以及Web产品的设计与制作。2002年开始使用ActionScript进行Flash/Flex相关内容的开发,多次为美国及欧洲公司编写Flash在线游戏、Flex应用软件。长期关注和研究ActionScript在各领域中的应用。现就职于Cisco-Webex从事Flash/Flex的研发。

书籍目录

第1章  认识Flex 3
11.1 Flex简介
21.1.1 什么是Flex
21.1.2 Flash和Flex的区别
21.2 熟悉Flex Builder 3 开发环境
31.2.1 系统要求
31.2.2 了解Flex Builder 3
41.3 如何配置Flex Builder 3
51.3.1 自定义界面
61.3.2 编译参数设置
71.4 MXML语言概述
81.4.1 MXML语言标签
81.4.2 标签属性
81.4.3 使用ActionScript 3
91.5 项目类型概述
101.5.1 Flex项目
101.5.2 ActionScript项目
161.5.3 Library项目
181.5.4 AIR项目
241.6 命令行编译项目
271.7 使用项目和简单调试
291.7.1 导入项目
291.7.2 关闭/删除项目
311.7.3 项目的历史记录
321.7.4 运行时调试
331.7.5 断点管理
341.7.6 观察变量
351.8 本章小结
36第2章 ActionScript 3入门及面向对象基础
372.1 变量和运算符
382.1.1 变量
382.1.2 变量的作用域
392.1.3 变量的默认值
432.1.4 运算符
432.1.5
算术运算符
442.1.6 赋值运算符
452.1.7 关系运算符
452.2 数据类型
462.2.1 基本数据类型
462.2.2 数据类型转换
472.3 字符串
492.3.1 创建字符串
502.3.2 字符串比较
512.3.3 连接字符串
522.3.4 字符串的查找和替换
522.3.5 字符串转换大小写
542.4 数组
552.4.1 数组的定义
552.4.2 数组的访问
562.4.3 数组常用函数
572.4.4 多维数组
592.5 条件语句
602.5.1 关系运算和逻辑运算
602.5.2 if…else语句
612.5.3 if…else if 语句
612.5.4 switch语句
622.5.5 ?:操作符
632.6 循环控制
632.6.1 for语句
632.6.2 for…in语句
642.6.3 for each…in
642.6.4 while 语句
652.6.5 do…while 语句
652.7 函数
662.7.1 函数的基本概念
662.7.2 函数的参数
672.7.3 函数的返回值
692.7.4 函数的递归调用
692.8 良好的编程习惯
702.8.1 变量的使用
712.8.2 语句的注意事项
732.8.3 编写函数的规则
762.9 面向对象编程简介
762.10 类
772.10.1 类的定义
782.10.2 类属性
792.10.3 构造函数
802.11 属性和方法
812.11.1 属性与方法的抽象
812.11.2 属性和方法的访问属性
812.11.3 属性的访问方法
822.11.4 静态成员
832.12 接口
842.12.1 定义接口
842.12.2 实现接口
852.13 继承
862.13.1 基类和派生类
862.13.2 方法的重载
872.13.3 不能继承静态属性
882.14 类的实例化
892.15 HelloAS代码分析
892.16 本章小结
91第3章 Flex 3中的事件
933.1 事件概述
943.1.1 Flex事件概述
943.1.2 Flex事件一览
973.2 事件机制
983.2.1 事件注册
983.2.2 事件触发
993.2.3 事件传递
1003.2.4 事件的默认行为
1023.2.5 绑定基础
1053.3 鼠标事件
1063.3.1 使用鼠标事件
1063.3.2 鼠标事件的关联
1093.3.3 右击及双击事件
1113.3.4 鼠标事件的触发顺序
1133.4 键盘事件
1163.4.1 使用键盘事件
1163.4.2 关于keyCode
1183.4.3 键盘事件的优先级
1193.5 自定义事件
1213.5.1 如何自定义事件
1213.5.2 在MXML中自定义事件
1233.6 本章小结
126第4章 容器与组件
1274.1 使用组件
1284.1.1 使用Label、Text、TextInput和TextArea组件
1284.1.2 使用RichTextEditor文本编辑组件
1304.1.3 使用ComboBox下拉列表组件
1314.1.4 使用Alert对话框
1334.1.5 使用RadioButton和Radio ButtonGroup组件
1354.1.6 使用ProgressBar进度条组件
1364.1.7 使用PopUpButton和Pop UpMenuButton组件
1384.1.8 使用List、HorizontalList和TileList列表组件
1404.1.9 使用Menu和MenuBar组件
1434.1.10 使用DataGrid组件
1474.1.11 使用Tree组件
1484.1.12 使用ColorPicker颜色选择器
1514.1.13 使用Repeater组件
1534.2 使用容器
1554.2.1 定位和布局
1554.2.2 导航容器
1584.3 本章小结
164第5章 数据绑定与数据模型
1655.1 数据绑定
1665.1.1 使用[Bindable]元数据标签
1665.1.2 MXML中常用的绑定方式
1695.1.3 使用ActionScript进行绑定
1725.1.4 绑定动态类型数据
1785.2 数据模型
1805.2.1 使用外部XML文件
1815.2.2 将数据绑定到数据模型
1815.2.3 使用ActionScript创建数据模型
1835.3 本章小结
186第6章 用户输入验证
1876.1 输入验证基础
1886.1.1 第1个验证的例子
1886.1.2 验证事件
1896.1.3 标准验证器
1916.2 正则表达式验证器
1956.2.1 正则表达式基础
1956.2.2 正则表达式语法
1986.2.3 使用正则表达式验证器
2016.3 高级验证
2036.3.1 自定义验证器
2046.3.2 多字段验证
2076.4 错误提示的样式
2106.5 本章小结
211第7章 控制管理器
2137.1 系统管理器SystemManager
2147.1.1 应用创建过程
2147.1.2 加载进度条
2157.1.3 管理顶级显示对象
2167.2 模块管理器ModuleManager
2187.3 拖放管理器DragManager
2247.3.1 传统拖放实现
2247.3.2 使用DragManager实现拖放
2267.3.3 使用DragSource
2287.3.4 使用List中的拖放支持
2317.4 光标管理器CursorManager
2327.5 弹出窗口管理器PopUpManager
2357.5.1 Alert弹出窗口
2357.5.2 使用PopUpManager定制弹出窗口
2377.5.3 弹出窗口的层次
2427.6 提示管理器ToolTipManager
2437.6.1 关于ToolTip
2437.6.2 管理ToolTip的ToolTipManager
2467.6.3 创建自定义提示
2507.7 浏览器管理器BrowserManager
2527.8 资源管理器ResourceManager
2567.9 焦点管理器FocusManager
2667.10 本章小结
268第8章 使用元数据标签
2698.1 常用的元数据标签
2708.1.1 [ArrayElementType]元数据标签
2708.1.2 [Bindable]元数据标签
2718.1.3 [DefaultProperty]元数据标签
2718.1.4 [Deprecated]元数据标签
2728.1.5 [Effect]元数据标签
2738.1.6 [Embed]元数据标签
2738.1.7 [Event]元数据标签
2798.1.8 [Exclude]元数据标签
2798.1.9 [ExcludeClass]元数据标签
2808.1.10 [IconFile]元数据标签
2808.1.11 [Inspectable]元数据标签
2818.1.12 [InstanceType]元数据标签
2838.1.13 [NonCommitting ChangeEvent]元数据标签
2838.1.14 [RemoteClass]元数据标签
2848.1.15 [Style]元数据标签
2848.1.16 [Transient]元数据标签
2858.2 特殊的元数据标签
2858.2.1 [AccessibilityClass]元数据标签
2858.2.2 [ ChangeEvent]元数据标签
2868.2.3 [CollapseWhiteSpace]元数据标签
2878.2.4 [Frame]元数据标签
2878.2.5 [Mixin]元数据标签
2928.2.6 [PercentProxy]元数据标签
2938.2.7 [ResourceBundle]元数据标签
2948.2.8 [SWF]元数据标签
2948.3 自定义元数据标签
2958.3.1 创建自定义metadata标签
2958.3.2 通过反射机制使用自定义元数据标签
2998.4 本章小结
306第9章 行为与动画效果
3079.1 什么是行为
3089.1.1 触发器与效果
3089.1.2 简单效果组件
3099.1.3 复合效果组件
3169.2 使用行为
3179.2.1 控制效果播放
3189.2.2 通过Style添加行为
3199.2.3 使用缓动函数
3219.2.4 自定义缓动函数
3239.2.5 使用位图缓存策略
3249.3 自定义行为
3259.3.1 自定义效果
3259.3.2 自定义触发器
3309.4 使用视图状态
3329.4.1 视图状态简介
3329.4.2 添加状态过渡
3369.4.3 创建自定义覆盖类
3389.5 本章小结
340第10章 样式和皮肤
34110.1 Flex中的CSS
34210.2 皮肤
34610.2.1 应用皮肤
34610.2.2 制作图形皮肤
34710.3 在Flex设计模式下使用样式
34810.4 使用嵌入字体
35110.4.1 嵌入字体文件
35110.4.2 使用高级抗锯齿功能
35310.4.3 设定嵌入字符范围
35410.4.4 通过SWF文件嵌入字体
35510.5 主题
35910.5.1 使用主题
35910.5.2 创建主题
36010.6 样式编程
36010.6.1 使用样式管理器
36010.6.2 运行时载入样式
36310.6.3 字体管理
36510.6.4 可编程皮肤
36710.7 本章小结
375第11章 高级组件开发
37711.1 组件的生命周期
37811.2 扩展UIComponent组件
38011.2.1 UIComponent中的高级方法
38011.2.2 使用ActionScript创建自定义组件
38211.3 列表类组件
38611.3.1 ItemRenderer项目渲染器
38611.3.2 ItemEditor项目编辑器
39711.3.3 IFactory接口与ClassFactory类
40711.4 使用延迟技术
41011.4.1 延迟创建组件
41011.4.2 按顺序实例化容器
41311.4.3 向Application创建队列中动态添加容器
41411.4.4 使用callLater()方法
41611.4.5 使用IDeferredInstance接口
41911.5 代码分离形式的自定义组件
42211.6 本章小结
426第12章 外部数据交互
42712.1 与封装器页面通信
42812.1.1 从页面获取数据
42912.1.2 与JavaScript交互
43112.2 Flex-Ajax桥
43412.2.1 建立Flex-Ajax桥
43412.2.2 使用Flex-Ajax桥
43812.3 使用LocalConnection
44112.4 使用URLLoader
44312.4.1 加载文件
44412.4.2 后台数据交互
44612.5 HTTPService
44912.5.1 通过MXML使用HTTPService
45012.5.2 通过ActionScript使用HTTPService
45112.6 WebService
45312.6.1 通过MXML使用WebService
45312.6.2 通过ActionScript使用WebService
45612.7 使用FileReference和FileReferenceList
45812.7.1 上传文件
45812.7.2 下载文件
46212.8 Socket入门
46412.8.1 Socket简介
46512.8.2 使用Socket读取外部数据的实例
46512.8.3 XMLSocket类
46812.9 本章小结
469第13章 使用Remoting
47113.1 AMFPHP
47213.1.1 安装配置AMFPHP
47213.1.2 打个招呼
47413.1.3 使用对象映射
47813.1.4 连接数据库
48113.1.5 使用ActionScript代替MXML标签
48713.1.6 使用NetConnection
48913.2 WebORB
49013.2.1 创建支持WebORB的ASP.NET网站
49113.2.2 创建Flex工程
49213.2.3 使用WebORB
49413.2.4 数据映射
49613.3 FluorineFx
49813.3.1 创建支持Fluorine的ASP.NET网站
49813.3.2 创建Flex工程
50013.3.3 使用FluorineFx
50213.4 本章小结
503第14章 模块编程
50514.1 模块简介
50614.2 第1个模块应用
50714.3 模块加载和卸载
51414.4 模块数据共享
51714.5 实例:图表模块应用
52414.6 本章小结
530第15章 运行时共享库RSLs
53115.1 运行时共享库简介
53215.1.1 什么是运行时共享库
53215.1.2 运行时共享库和模块编程
53315.2 创建并使用库文件SWC
53315.2.1 创建SWC
53415.2.2 SWC文件结构
53415.2.3 静态引用SWC
53415.3 使用SWC作为RSLs
53815.3.1 动态引用
53815.3.2 跨域使用
54215.3.3 框架RSLs
54315.4 选择使用RSLs
54515.5 本章小结
545第16章 共享对象
54716.1 共享对象基础
54816.1.1 什么是共享对象
54816.1.2 共享对象的操作
55116.1.3 共享对象的安全
55216.2 使用本地共享对象
55316.2.1 单一应用使用
55416.2.2 多个应用使用
55616.3 使用远程共享对象
55816.3.1 服务器端技术
55816.3.2 实例:共同控制的对象
57116.3.3 实例:聊天大厅
57316.4 自定义数据类型
57616.5 本章小结
579第17章 Cairngorm框架
58117.1 单例模式
58217.2 Cairngorm体系
58317.2.1 值对象(ValueObject)
58317.2.2 视图层(View)
58417.2.3 数据模型(Model)
58417.2.4 控制器(Control)
58517.2.5 命令(Commands)
58717.2.6 业务逻辑(Business)
58817.3 创建Flickr图片搜索工具
59217.3.1 准备工作
59217.3.2 使用Adobe提供的flickr库
59317.3.3 工作流程及结构设计
59517.3.4 代码编写
59617.3.5 项目发布
61317.4 本章小结
613第18章 PureMVC框架
61518.1 基本结构
61618.1.1 整体结构
61618.1.2 模块结构
61818.2 模块功能
61818.2.1 Model和Proxy
61818.2.2 View和Mediator
62018.2.3 Controller和Command
62618.2.4 Facade
62818.3 应用实例:天气预报
63018.3.1 构建框架
63018.3.2 View设计
63118.3.3 Model设计
63918.3.4 Controller设计
64318.3.5 完成Facade
64518.4 其他框架
64718.5 本章小结
648第19章 留言板实例
64919.1 界面和功能需求
65019.2 Flex架构设计
65119.3 程序分析
65219.3.1 vo文件夹
65219.3.2 model文件夹
65519.3.3 events文件夹
65719.3.4 service文件夹
65919.3.5 controller文件夹
66119.3.6 view文件夹
66519.3.7 DiaboLab应用程序
67719.4 项目发布
68019.5 本章小结
681附录A ActionScript与.NET类型转换表
683附录B Flash Player的安全机制687B.1 安全沙箱
688B.2 Security.sandboxType属性
688B.3 跨域策略文件crossdomain.xml
689B.4 跨脚本访问
690B.5 设置管理器
690

编辑推荐

《我的Flex我精通:RIA高级开发指南》特色:涵盖Flex3RIA开发方面各项技术,是一本从入门到精通的宝典。《我的Flex我精通:RIA高级开发指南》作者多年在美国及欧洲多家公司主持Flash/Flex相关产品的程序开发工具,181个实例,结合相关知识,全面阐述Flex3全方位技术。[涵盖内容广]《我的Flex我精通:RIA高级开发指南》专注于RIA方面,从基本知识开始由浅入深,循序渐进。通过独到的视角组织内容,如将Flex3中的管理器部分单独列出。每部分内容均采用了大量的小例子来说明知识点,并对代码进行较详细的说明。【实践能力强】从实例入手是学习的快捷方法,《我的Flex我精通:RIA高级开发指南》实例均是使用FlexBuilder3开发并调试通过,包含181个实例,与理论的阐述相结合,这样即使是对于已经有了一定基础的Flex开发者也会有一定的帮助。[作者功力深]《我的Flex我精通:RIA高级开发指南》两位作者多次为美国及欧洲公司主持Flash/Flex相关产品的程序开发工作,并编写了多款Flash在线游戏、Flex应用软件,长期关注和研究ActionScript在各领域中的应用。现就职于Cisco—Webex,从事Flash/Flex的研发工作。

作者简介

《我的Flex我精通:RIA高级开发指南》是一本介绍使用Flex 3进行富互联网应用系统开发的专业著作,内容涵盖了与Flex应用相关的各个领域。基础知识部分包括认识Flex 3、面向对象基础、Flex 3中的事件、容器与组件、数据绑定与数据模型、用户输入验证等内容;进阶部分则包括控制管理器、使用元数据标签、行为与动画效果、样式和皮肤、高级组件开发、外部数据交互、使用Remoting、模块编程、共享对象等内容;Flex开发框架部分包括Cairngorm框架、PureMVC框架等;最后通过一个完整的实例对整书内容进行了概括总结。 
《我的Flex我精通:RIA高级开发指南》各章节内容相互铺垫,大量实例穿插其中。知识阐述与实际案例结合,深入浅出,循序渐进,具体直观,可操作性强,是一本难得的从入门到精通Flex编程的综合书籍。《我的Flex我精通:RIA高级开发指南》语言简练,图文并茂,结构合理,基础知识丰富详细,实例安排典型实用,技术由简到难,具有很强的实用性、指导性和可操作性。学习完《我的Flex我精通:RIA高级开发指南》,读者无论此前基础如何,都可以迅速提升成长为一名合格的Flex开发人员。
随书所附光盘包含书中实例源文件。
《我的Flex我精通:RIA高级开发指南》适合广大Flex初、中级读者使用,同时,还可作为高等院校相关专业学生,以及社会相关培训班学员的理想教材。

图书封面


 我的Flex我精通下载 精选章节试读 更多精彩书评



发布书评

 
 


精彩书评 (总计1条)

  •     非常佩服作者和出版社,可以搞出这样一本极品书籍。一看题目还以为内容会不错呢?看过才知道不是一般的差啊!!!虽然选题很好,但是其他方面都很差。一错到底的一本书,无论从章节安排、印刷、排版都有问题,到处充满着类似于印刷错误的错误,特别是代码该有等号的地方没有等号,该有空格的地方没有空格,有几段竟然解释和代码对不上。真不知道,出版社有没有审校过。除了错误,不知道道是不是为了凑字数写的是相当的罗嗦。总之,感觉这本书是拼凑起来的,真是大是所望,非常不推荐购买,要看的好去借一下,或去书店看。

精彩短评 (总计9条)

  •     看了一部分....感觉讲的还成,因为不是自己的书...感觉programing flex3也不错
  •     这本书在图书馆借过,上面内容比较实际,结合flex3本身的帮助可以很好的解决大部分问题。不过,以本人见识,仅限于中低端开发,高端的也许还有别的书,这书可以做参考,但学习此书的话还是不需要尝试好。另外阅读此书需要一定的flex基础方可。
  •     本书的内容不算非常深入或者全面但是足以应对显示中基础知识以外,最常用到的部分
  •     便于有一定基础的快速上手开发
  •     强烈推荐,讲解详尽,好书!
  •     入门很好的书,有若干bug,可忽视
  •     专业人士的书就是不一样
  •     工具书,很沉
  •     我的FLex我精通很不错
 

外国儿童文学,篆刻,百科,生物科学,科普,初中通用,育儿亲子,美容护肤PDF图书下载,。 零度图书网 

零度图书网 @ 2024