RIA开发奇兵——Flex

http://www.webjx.com/  发布时间:2008-12-17 14:55:49  来源:蓝色理想 
前言  1. RIA开发奇兵——Flex 曾经沧海难为水,除却巫山不是云。然而,当我们已经经历了众多编程语言、开发技术的洗礼之后,仍然被Flex的风采所打动。Flex是一种结合了广阔的市场前景和充满智慧的方法学的新一代复合型软件技术。我们一行三人决定结合自己的项目经验和开发技能为各位读者献上这本《Flex 3 RIA开发详解与精深实践》。
  1. 升级的RIA开发路线
    “君子性非异也,善假于物也”。Adobe公司似乎深悟了这个道理,汲取了XML结构清晰、格式通用的特点,创造了Flex美丽的外衣——MXML;然后又通过已经拥有一定用户基础的ActionScript脚本语言作为Flex聪慧的大脑;并在运行环境上为Flex技术做了扩展和优化。因此,亦可以说Flex是一项毫无新技术的新技术。
    然而,正是这样一种毫无新技术的新技术借助于自己得天独厚的运行时环境Flash Player一跃成为RIA(Rich Internet Application)开发的大热门。科学技术的发展带动了信息产业的发展,软件开发逐渐从高不可测的神坛上走了下来,变得更加大众化。因此,当前的软件开发形式不得不更多地借助于现有的市场基础。Macromedia公司(已被Adobe收购)就把握住了这个关键点大做文章,于是Flex技术冲进了广大软件开发者的视线。
  2. 无缝结合高层软件实现企业级RIA开发
    提到高层软件开发,就不得不说说Java和.NET这两种占企业级开发主导地位的技术旗舰。然而这两种软件技术进行企业级开发的不足之处就是界面处理,无论从效果还是交互方面都是依赖于传统的“网页”模式,Flex技术正是在这方面弥补了它们的不足。
    作为一项专注于界面效果和交互的RIA技术,Flex并没有忽视企业级开发的重要性。Life Cycle组件可以使Flex技术直接与Java企业级服务进行通讯,并可以方便地通过ActionScript对象与Java对象进行映射。这也是Flex技术非常“聪明”的一个方面,如果Flex技术自己包含一个硕大的企业级开发架构的话,就会带来诸多麻烦。
    1. 其一,这项技术恐怕过于庞大而不易于被开发者接受。
    2. 其二,Java、.NET等技术还处于企业级开发的主导地位,新技术不容易被认可。
    3. 其三,一些已经具备企业级开发技能的开发者可能不愿意放弃所掌握的技术而学习一项全新的技术。而Flex通过Life Cycle巧妙地避开了诸多麻烦,通过这个接口可以方便地与企业级应用进行沟通,造就了一项最佳的RIA开发方案。
  3. AIR的新思维
    Adobe公司收购了Macromedia之后,更加大力推动Flex技术发展。同时,他们又推出了另一项软件开发奇兵——AIR。如果说RIA技术是一支活力无限的生力军,那么Adobe的AIR技术就是一种把Flex技术带向桌面的引路人,通过AIR技术我们可以脱离浏览器的限制,进行桌面上的Web开发,甚至应用传统的Web开发技术开发出纯粹的桌面应用程序。AIR技术包含着一个运行时平台,在这个平台上可以使用包括Flex、JavaScript、HTML、Ajax在内的多种Web开发技术进行桌面开发,并且不依赖于特定的钱柜娱乐,可以说充分地结合了Java虚拟机和.NET通用语言运行时的优势,标新立异,博采众长。
    综上所述,Flex技术确实是美貌与智慧并重的软件开发技术。并且具有极高的可扩展性和灵活性,可以方便地与其他软件技术相结合。
    独乐乐,与众乐乐,孰乐?Flex给了我们答案。
2. 本书的组织及结构 本书首先由浅入深地讲解Flex技术的基础、应用、进阶开发,然后扩展到Flex的企业级Web项目开发和AIR开发。
这些部分都可独立成篇,可以分别作为该种技术层面的开发参考。
第一部分  开启Flex之门 第一部分引导读者走进Flex的大门,由浅入深、循序渐进地介绍技术架构和基础知识。并开始接触Flex的基础可视化组件开发,结合大量示例,进行详细而全面的讲解。 第1章  Flex 3程序设计基础
该章主要介绍Flex的基本概念、MXML、ActionScript以及事件机制等基础知识。
第2章  Flex可视化组件开发
该章全面讲解Flex的可视化组件开发方法。包括组件体系结构、IO控制组件、文本组件、菜单组件、容器类组件和布局组件等。
第二部分  Flex开发进阶 第二部分属于Flex较高层面的开发技术。已经具备了第一部分知识的读者,或者软件开发技能较高的读者可以直接阅读本部分,来了解Flex的高级开发。本部分讲解了Flex的行为控制、效果管理、视图、模块化编程等方面,并且对ActionScript 3和Flex图表技术进行专门且深入的讲解。 第3章  Flex程序设计进阶
该章对Flex的行为控制、效果处理、视图模式和视图转换进行讲解。
第4章  Flex 模块化编程
该章从模块化软件开发入手,逐步分析和讲解Flex的模块化编程及模块间的数据通讯。
第5章  ActionScript 3精要
该章把ActionScript 3.0作为单独的要点进行讲解,从基本概念入手,由浅入深地介绍ActionScript 3.0与以前版本的区别,并深入分析ActionScript 3.0的面向对象编程方法。
第6章  Flex图表
该章专门讲解Flex的可视化图表组件,并详细地说明图表组件中的事件处理,以及如何在项目中正确地应用图表组件。
第三部分  Flex 3 Web项目全案开发 第三部分是本书的一个综合性实践部分,将结合企业级Web开发的相关知识进行讲解,如果读者具备企业级开发经验,可直接参阅Flex与Web的接口实现部分;即使读者没有Web开发经验也可以通过本部分的Web项目入门讲解对企业级开发有进一步的了解。 第7章  Flex企业级开发实践——Flex + Struts
该章讲解Flex与著名的Web开源项目Struts进行整合的项目,并对数据服务进行讲解,详细分析Flex与Java系统的结合。
第8章  Flex企业级开发实践——Flex + Web Services
该章讲解Flex与Web Services技术结合的实践,从SOAP引擎Axis 2开始讲解Web Services,最后实现Flex与Web Services的完美结合。
第四部分  Flex 3 AIR桌面项目全案开发 第四部分是本书一个相对独立的部分,读者可以在掌握第一部分之后直接学习第四部分,在Flex的基础上进行AIR应用程序的开发。AIR项目可以说是Flex在RIA方向发展出来的“变种”技术,从Web上反转回桌面,从而使RIA程序真正脱离了浏览器,并且还具备跨平台和多语言支持的优势。本部分将对AIR的基础知识和AIR项目开发进行详细讲解。 第9章  桌面上的Web开发——AIR
该章讲解AIR的基础知识,并介绍如何使用Flex SDK及Flex Builder进行AIR应用程序的开发。
第10章  Flex AIR开发实践
该章讲解常用的AIR可视化组件、AIR文件系统操作、AIR应用程序设置、AIR数据库操作等桌面应用的相关内容,并通过一个实践项目结合AIR的开发技术,给读者一个全面的AIR应用展示。
本书内容分布和难点结构 在正文开始之前,我们将通过Flex的图表组件向您展示一下本书的内容分布和难点结构,使读者朋友在了解本书结构的同时,可以对Flex技术有个初步的印象,谢谢大家! 章节内容分布 章节难度分布 目录 PART 1  开启Flex之门
第1章  Flex 3程序设计基础 3
1.1  RIA概述 4
1.2  Flex简介 5
1.3  MXML 6
1.4  ActionScript 8
1.4.1  在MXML中使用ActionScript
脚本 8
1.4.2  使用ActionScript类 10
1.5  Flex的事件机制 14
1.5.1  Flex事件处理 14
1.5.2  Flex事件监听器注册 15
1.6  使用Adobe Flex Builder 16
1.6.1  Flex Builder系统需求 17
1.6.2  使用Flex Builder进行
开发 18
1.6.3  Flex Builder开发特点 19
1.7  在Flex中操作XML 22
1.7.1  XML在Flex中的应用 22
1.7.2  通过E4X处理XML 23
第2章  Flex可视化组件开发 25
2.1  Flex可视化组件简介 26
2.2  可视化组件基础 28
2.2.1  Flex组件体系基础 28
2.2.2  构建RIA—— Flex应用程序
开发步骤 29
2.2.3  数据集成与绑定,可视化
组件的数据操作 30
2.2.4  CSS,可视化组件的样式
处理 33
2.2.5  容器组件,可视化组件的
结合形式 34
2.3  IO控制组件 35
2.3.1  使用IO控制组件 35
2.3.2  Button类组件 36
2.3.3  Bar类组件 39
2.3.4  数据处理类组件 41
2.3.5  多媒体处理类组件 45
2.3.6  快捷交互类组件 51
2.3.7  辅助类组件 55
2.4  文本组件 57
2.4.1  文本组件的基本应用 57
2.4.2  Label和Text组件 61
2.4.3  TextInput和TextArea
组件 63
2.4.4  RichTextEditor组件 64
2.5  菜单组件 65
2.5.1  菜单组件基础 65
2.5.2  处理菜单条目 66
2.5.3  菜单组件应用示例 67
2.5.4  Menu组件的使用 70
2.5.5  MenuBar组件的使用 72
2.5.6  PopUpMenuButton组件的
使用 73
2.6  数据容器类组件 75
2.6.1  Flex数据容器组件与
数据驱动 75
2.6.2  使用 List组件 75
2.6.3  使用HorizontalList组件 78
2.6.4  使用TileList组件 79
2.6.5  使用ComboBox组件 81
2.6.6  使用DataGrid组件 83
2.6.7  使用Tree组件 88
2.7  布局控制与布局组件 94
2.7.1  Flex布局控制 94
2.7.2  使用Canvas组件 94
2.7.3  使用Box类布局组件 95
2.7.4  使用DividedBox类布局
组件 96
2.7.5  使用ControlBar组件 98
2.7.6  使用ApplicationControlBar
组件 99
2.7.7  使用表单组件 100
2.7.8  使用网格布局组件 105
2.7.9  使用Panel组件 107
2.7.10  使用Tile组件 108
2.7.11  使用TitleWindow组件 109
2.8  导航控制组件 112
2.8.1  使用ViewStack组件 112
2.8.2  使用TabNavigator组件 114
2.8.3  使用Accordion组件 115
PART 2  Flex开发进阶
第3章  Flex程序设计进阶 119
3.1  可视化组件行为控制 120
3.1.1  Flex行为控制概述 120
3.1.2  在MXML中使用行为控制 123
3.1.3  在ActionScript中使用行为
控制 124
3.1.4  可视化组件效果控制 125
3.2  视图模式与视图转换 130
3.2.1  视图模式 130
3.2.2  创建和应用视图模式 130
3.2.3  视图模式与历史记录
管理器 133
3.2.4  视图转换——Transitions 136
3.2.5  详解Transition的使用 138
3.2.6  效果过滤器 141
第4章  Flex模块化编程 145
4.1  Flex模块化编程概述 146
4.1.1  模块化软件开发 146
4.1.2  Flex模块架构 146
4.2  Flex模块的创建与使用 147
4.2.1  使用MXML创建模块 147
4.2.2  使用ActionScript
创建模块 149
4.3  数据传输 150
4.3.1  应用程序与模块之间的
数据传输 150
4.3.2  模块之间的数据传输 153
第5章  ActionScript 3精要 155
5.1  ActionScript 3概述 156
5.1.1  继往开来的ActionScript 156
5.1.2  与时俱进的ActionScript 3
新特性 157
5.2  ActionScript 3编程基础 158
5.2.1  ActionScript 3编程
概述 158
5.2.2  类与对象 159
5.2.3  包与命名空间 160
5.3  ActionScript 3的面向对象编程 171
5.3.1  面向对象的编程基础
知识 171
5.3.2  继承和多态 172
5.3.3  访问控制与封装 174
5.3.4  属性的覆盖 175
第6章  Flex图表 179
6.1  Flex图表简介 180
6.2  Flex图表组件基础 181
6.2.1  Flex图表辅助类型 181
6.2.2  定义Flex图表数据 182
6.3  使用Flex图表组件 185
6.3.1  范围图(Area Chart) 185
6.3.2  线形图(Line Chart) 188
6.3.3  条形图(Bar Chart) 192
6.3.4  柱状图(Column Chart) 193
6.3.5  气泡图(Bubble Chart) 195
6.3.6  散点图(Plot Chart) 198
6.3.7  烛台图(Candlestick Chart) 200
6.3.8  HLOC图
(HighLowOpenClose Chart) 202
6.3.9  饼图(Pie Chart) 204
6.3.10  使用多重数据集 209
6.3.11  使用多重坐标轴 211
6.4  Flex图表定制化 216
6.4.1  在图表中使用CSS样式 217
6.4.2  使用Filter 218
6.4.3  Legend组件 220
6.5  Flex图表事件处理 222
6.5.1  图表组件的事件处理 222
6.5.2  图表数据条目的事件处理 223
PART 3  Flex 3 Web项目
         全案开发
第7章  Flex企业级开发实践——
Flex + Struts 229
7.1  Flex与Struts 230
7.1.1  Flex与Java,自然又必然 230
7.1.2  Struts,外表-思想-内心 231
7.1.3  Flex为Struts披上了绚丽的
外衣 233
7.2  Flex与数据服务 270
7.2.1  LiveCycle很好很强大 270
7.2.2  RPC,Flex也能“分布式” 271
7.2.3  消息,让Flex走向
“企业级” 286
7.2.4  数据管理服务,Flex不是
花瓶! 295
第8章  Flex企业级开发实践——
Flex + Web Services 309
8.1  Web Services,分布式无国界 310
8.2  SOAP引擎Axis 2 311
8.3  Flex + Web Services,开始起航 324
PART 4  Flex 3 AIR桌面项目
     全案开发
第9章  桌面上的Web开发——AIR 329
9.1  AIR概述 330
9.2  AIR程序初步体验 331
9.2.1  安装运行时环境 332
9.2.2  安装和运行Twhirl 333
9.2.3  获得其他AIR示例程序 333
9.3  开发环境的设置 334
9.4  AIR的安全性问题 334
9.4.1  安全沙箱(Sandboxes) 334
9.4.2  JavaScript和HTML的
限制 335
9.4.3  引入外部资源的不安全
因素 336
9.4.4  对于HTML的安全性约束 336
9.5  用Flex Builder 3构建第一个
AIR应用 336
9.5.1  创建AIR工程 337
9.5.2  编写代码 338
9.5.3  打包应用程序 340
9.6  用Flex SDK构建第一个AIR应用 343
9.6.1  设置开发环境 343
9.6.2  创建应用程序的描述文件 344
9.6.3  编写应用程序代码 345
9.6.4  编译和运行应用程序 346
9.6.5  创建AIR应用程序
安装包 347
9.7  创建AIR库工程 349
9.8  Adobe AIR的新增功能 349
第10章  Flex AIR开发实践 353
10.1  Flex AIR组件 354
10.1.1  文件系统管理控件 354
 
10.1.2  HTML组件 359
10.1.3  FlexNativeMenu控件 360
10.1.4  关于窗体容器
(Window Containers) 365
10.2  操作文件系统 371
10.2.1  文件的基本操作 371
10.2.2  文件的读写操作 379
10.3  设置AIR应用程序的属性 385
10.3.1  应用程序描述文件的
结构 385
10.3.2  应用程序描述文件中的
重要属性 388
10.4  读取应用程序设置 390
10.4.1  读取应用程序的
描述文件 390
10.4.2  获得应用程序和发布的
唯一标识 390
10.5  AIR的本地数据库 391
10.5.1  关于local SQL databases 391
10.5.2  与数据库操作有关的类 392
10.5.3  创建数据库 394
10.5.4  管理数据库中的数据 395
10.5.5  处理多个数据库 401
10.5.6  一个简单的通讯录程序 401
更多

推荐文章

     
钱柜娱乐