• 1.摘要
  • 2.基本信息
  • 3.基本介绍
  • 3.1.内容简介
  • 3.2.作者简介
  • 4.媒体推荐
  • 5.图书目录
  • 6.序言

Flex 3 RIA开发详解与精深实践:

杨占坡著书籍

《Flex 3 RIA开发详解与精深实践:企业级Web应用与AIR桌面应用》以实践为手段,以实用为核心,全面解析了应用Flex技术进行RIA开发的思维与过程。从实践开始、到实践结束。从最简单的Hello World演示到完整的项目全案开发,给读者全新的学习过程。内容分为四部分:开启Flex之门、Flex开发进阶、Flex 3 Web项目全案开发、Flex 3 AIR桌面项目伞案开发。涉及了Flex基础概念、组件设计开发、图表开发、企业级应用以及AIR桌面应用等方面。Flex是目前最为普及的一种RIA开发技术,依托于脱胎换骨的ActionScript 3.0,可以轻松实现相比传统的网络应用更加卓越的交互能力和更加绚丽的表现效果。Flex技术本身并不是凭空出现的,经过了Flash的长期预热,依托于XML、ActionScript 3.0等标准化开发语言,终成正果。《Flex 3 RIA开发详解与精深实践:企业级Web应用与AIR桌面应用》最大的特点是使用大量小巧的示例帮助读者快速体验Flex开发流程。并在最后两大部分中结合完整的项目开发案例,给读者以积少成多、从量变到质变的软件开发学习过程之体验。

基本信息

  • 书名

    Flex 3 RIA开发详解与精深实践

  • 作者

    杨占坡 杨铭

  • 出版社

    清华大学出版社

  • 出版日期

    2009年1月1日

  • 页数

    421页

基本介绍

内容简介

《Flex 3 RIA开发详解与精深实践:企业级Web应用与AIR桌面应用》作者是国内第一个企业级Flex上线项目的负责人,资深软件工程师,并多年从事Flash/Flex RlA开发,具有货真价实的Flex功力。光盘提供作者精心整理的代码、项目文件,并包含国内首次提供的Flex项目开发操作视频。读者对象:Web开发人员、软件工程师、Flash设计师、网页设计师、软件专业相关师生等。国内首个Flex商业项目开发者的领先感悟Web项目与桌面项目之精密操作程序员的Flex精髓——您需要一定编程基础精心选择最能发挥Flex实力的项目进行剖析凌厉代码风格,绝菲一股闪客设计师的“彪悍代码”。

作者简介

杨占坡,资深软件工程师、软件架构师、北京航空航天大学软件工程硕士,精于企业级软件开发和嵌入式系统开发。对C语言、Java语言、JavaEE系统、Ruby On Rails、Flex、Ajax等领域都有深入的研究;属于国内最早一批应用FLex进行企业级开发的软件工程师;国内第一批Ruby On Rails架构的倡导者;拥有企业级分布式架构设计的国家级发明专利。在软件设计方法、软件开发技术方面都具有深刻认识和独到见解。杨铭 资深软件架构师、技术顾问。1980年生人,集70后沉稳与80后豪迈于一身。7年软件行业从业经验,参与过戴姆勒·克莱斯勒TACO、普天手机银行、IBM eManager、友邦GLAS等多个大型系统的设计和研发,在大型互联网应用设计、RIA、系统性能优化和网络编程领域有深入研究。翁颖 资深软件工程师。热衷于各种软件开发技术,精通企业级Web开发:面向对象软件设计、JavaEE架构、Ajax技术;对互联网搜索引擎、网络分析系统、分布式技术都有深入研究。长期从事保险行业的大型企业级应用开发,同时具备优秀的技术基础和丰富的项目经验。业精于勤、厚积而薄发!

媒体推荐

Flex在当今富因特网应用中充当着旗舰级的角色,而这本书由浅入深解析了Flex技术,无论对于新手还是拥有Web开发经验的软件工程师都非常有实用价值。尤其是其中的项目实践部分,可以作为开发范本来使用。Flex开发体系是非常有特点的,这是国内我目前可以找到的唯一一本从思维上精密解析Flex RIA开发流程的资料。 ——中国数码Web研发主管 孙雷 杨占坡是我多年的朋友,对技术极具天赋和热情。他的开发经验从Web应用到IDE开发,从嵌入式系统到Web RIA应用。这本书不是通常的技术手册,而是具有货真价实的可操作性!在当前Flex已经越来越多地被国际大公司应用于大型系统中的形势下,相信占坡领衔的这本书会给真正想将Flex用于实际项目的朋友提供非常好的参考。 ——IBM(中国)资深系统架构师 张琦 杨占坡我认识的时间不长,但是印象非常深刻。他是位出色的工程师和架构师,敢于创新,敢于挑战权威,敢于打硬仗,而且每次出手都能证明自己的价值。我作为Silverlight体系的参与开发者和拥护者,与他的交流中得到了很多东西,毋庸置疑,Flex仍然是微软在RIA领域最强劲的竞争对手,我们希望对手更强大,以推动技术发展! ——微软(爱尔兰)高级软件架构师 曹刚 Flex为企业应用以及互联网多媒体应用提供一个现时最为成熟,功能齐备的解决方案,强大的数据整合能力能够高效经济地利用企业已有的业务系统,结合网络Web资源,创建出丰富多彩的各式应用。Flex技术的应用在国内正逐渐受到关注和重视,但是在目前已有的图书资料中,基本上都是在说明一些概念性内容和IDE的使用,并没有真正深入Flex核心应用,而本书具有卓尔不群的实用价值,字里行间充斥着一目了然的开发经验,相信这本书可以成为你精通Flex的踏脚石。 ——cnflex.org站长 劳伟峰

图书目录

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

序言

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技术自己包含一个硕大的企业级开发架构的话,就会带来诸多麻烦。