《Flex3实战》作者自序
2009年03月21日 好书, 翻译, 译作支持
多年来,我一直都在找寻一种方式,一种能够带给用户更好的在线体验的方式。而且,这个找寻历程从Google革命性的Google Maps站点引起轰动之前就已经开始了。我的意思是说,Web用户在很长一段时间里,都不知道还能有什么更好的在线体验。
在把Web当作文档发布系统使用的若干年里,用户体验曾一度在强大的本地桌面应用和乏善可陈的HTML应用之间摇来摆去。但是,贫乏的用户体验并没有对HTML和Web构成冲击——Web作为平台中立的文档发布系统,事实上是非常名符其实的。开发人员和公司专注于Web是因为它支持快速应用程序开发,而用户之所以接受眼前的一切则是由于——嗨!Web应用程序就是这个样子的。真的就是这个样子吗?
有件事曾令我百思不得其解。每次点击都会导致后台系统执行许多代码,而结果反映到UI上却只是一点点变化。而比这更糟的则是对数据库服务器频繁密集的访问。对一名技术人员来说,解决这个问题最简便的办法就是多加内存、使用虚拟机装载,或者少花钱多采购一些杂牌服务器,然后大功告成。但是,我更关心用户要为此付出什么代价。他们会对Web应用程序中常见的点击加等候习以为常;而且,对UI也没有多大的操作自由。不错,可以使用JavaScript;然而,这只是在掌握更高级技术之前的选择。从投入产出角度讲,这样做往往得不偿失。
这时候,Java Applet和Flash问世了,而且乍一看它们正是我要找寻的东西。实际上,Applet作为一个解决方案并不合适,它的体积太大,下载也很慢,况且不能跨平台使用。Flash挺有希望的,可是在设计师的工作环境中创建企业级应用程序,仍然不免有缘木求鱼的味道。
我在eBay的知识管理部门工作期间,也遇到了相同的问题。我需要找到一种方式,能够抽象出数据的复杂性,并且能让用户在可视的环境中方便地操作这些数据。
既而,Flex在2004年发布了(最初是V1,很快就是V1.5)。我当时有权作出采用它的决定,我们的团队也因使用它而感受到了完全不一样的体验。当时,我就知道Flex前途无量。因为Flex应用程序既具有桌面应用程序的强大特性,又能满足软件团队快速开发的需求。
作为Flex支持者,我把推动Flex社区发展当作自己的一项使命。我创建了CFLEX.Net(www.cflex.net),并坚信这个社区的规模越大,通过知识和代码共享产生的反推力也将越大,借此就可以促进这项技术的更快普及。毕竟,强有力的支持网络可以降低在组织中引入新技术的风险。
作为较早采用Flex的人,我在学习Flex的过程中走过不少弯路。主要原因是当时缺少相关书籍和参考资料。这种局面在Flex 2发布后得到了改观,大量的学习资源开始涌现。
我在2005年底离开eBay加入Amcom Computer Services,并在那里创建和管理一个开发团队。同学习任何新技术一样,要熟练掌握Flex也不容易。因此,最好的办法就是不断提升技能。在培训开发人员使用Flex的过程中,我发现市面上的某些图书常常言不及义,很多显而易见的问题都没有提到。
为了进一步推动Flex社区的发展,我决定写作本书,希望它能解决读者经常会遇到的问题。本书一反按功能特性布局谋篇的常见模式,改为按创建应用程序的自然进程组织内容。我只在必要时介绍必要的知识,不会过早地讨论复杂主题。同时,着意缩短的示例代码,也将有助于读者理解和上手。另外,我还发现把新事物与已知事物联系起来,可以增强学习效果。因此,在适当的情况下,我会尽可能拿其他技术的实现原理来进行类比。
希望读者通过阅读本书能够深入理解Flex,并最终加入到Flex社区中——因为届时你也能够向周围的人共享自己的知识和经验。
而现在,则是准备学习Flex的时候。随着社区逐步发展壮大,越来越多第三方厂商会发布与Flex有关的技术,Flex用户组也会在世界各地不断涌现。
随着其他厂商的先后跟进,RIA领域将迅速升温——Adobe再次证明自己走在了前列。我们正处于一个令人振奋的时代!以HTML为基础的Web应用程序始终会占有一席之地;然而,现在是该把你的技能提升到一个新高度的时候了。因为,这个产业的向前发展不会以个别人的意志为转移。
现在请坐下,系好安全带,旅行就要开始了!
TARIQ AHMED
作者简介:
TARIQ AHMED是一位Web应用程序的先驱人物,先后向Bell Canada和Reuters等公司引荐了下一代Web技术。他和Jon Hirschi最早将Adobe Flex引入eBay;随后又被其他项目采用。作为Adoble Flex社区专家,Tariq始终致力于推广这一技术并通过各种项目为社区提供支持。另外,Tariq因他的Community Flex (CFLEX.Net)站点而广为人知。Tariq目前是位于美国于旧金山湾区的Amcom Technology公司的产品开发经理。
JON HIRSCHI自第一个版本开始就致力于Flex的改进。作为Adobe Flex社区专家,他一直通过自己的博客、技术杂志文章和用户组共享其具有专家视角的观点。Jon不仅向eBay引荐了Flex,而且也是eBay负责管理服务器的前沿控制中心的一员。Jon目前是位于美国于旧金山湾区的Kadoink Inc.公司的技术经理。
FAISAL ABID是一名在加拿大多伦多求学的软件工程专业的学生,他拥有自己的RIA咨询公司G-uniX Technologies。他曾为很多客户撰写了RIA方案,包括基于互联网的创业型公司Buzzspot和RazorCom。Faisal的社区业绩包括在各类杂志上发表文章,他也因自己的技术经验而小有名气。
《Flex3实战》序
2009年03月20日 好书, 翻译, 译作支持
创建RIA(Rich Internet Applications,富因特网应用程序)的技术早于这个概念很久就出现了;Flash Platform是从v8开始支持RIA的。然而,Flash最初的定位只是一种发挥设计人员创意的环境,并不适合开发人员使用。
如果读者使用Flash开发应用程序,那么仍然需要跨越很大的障碍。首先,以高效快捷的方式发布囊括众多功能的富应用程序,就是一项严峻的挑战。因为,你必须亲手完成其中的绝大部分工作。
问题其实很简单:最好是有一个纯粹的开发环境,既能利用业已受到广泛支持、性能优越的Flash,又能直接满足开发人员及其系统开发的需求。为开发人员提供一个得力的工具,再配备一个能替他们完成大多数繁琐工作的框架,从而让他们把注意力集中到应用程序的逻辑上来。这个问题的解决方案就是Flex。
Adobe FlexFlex自2004年3月由Macromedia发布起,已经过了多年的发展。而且,紧随第一版之后发布的1.5版,同年就取得了更好的销售业绩。Flex最早是作为一种服务器产品开发的,广告里也把它作为在Flash Platform上创建应用程序的一种工具来宣传。
这个工具的推出开启了一个新时代,也点燃了RIA的燎原之火。随着基于Flex的RIA日益受到人们关注,事实已经证明确实存在对RIA的需求,而这种技术手段赖以发展的基础也已具备。下一步就是把RIA推向规模化。
后来,在Adobe的品牌下,这个产品以2006年6月发布的Flex 2为标志取得了巨大的飞跃。主要表现在对语言(ActionScript 3)的重新实现和对Flash Player(V9)的重要升级,极大的提升了它的性能。
而且,开发环境转换到Eclipse平台,也坚定了程序员们的信心。Flex 2关注的是基础开发与服务器端数据管理的衔接问题。我们也知道,首次以免费方式发布的用于编译Flex应用程序的SDK还处在IDE外部。最终,服务器端组件发展成了Flex Data Services,即目前的LiveCycle Data Services,该服务支持实时数据共享。
这些改变都有助于形成更明确的RIA思想,即在浏览器中提供一种桌面应用程序般的体验。而此时,RIA最需要的就是社区支持。
Tariq AhmedTariq也发现了社区支持的重要性,并走在了前列。为此,他创建了第一个专注于Flex的门户社区,即Community Flex (CFLEX.Net)。
CFLEX.Net中汇集了引导人们学习这个新框架的大量经验、技巧、博客、新闻和技术文章。Tariq是社区发展初期上述内容的主要发布者,而我就从他那里学到了很多Flex技能。
Tariq很早就认识到了数据服务及实时数据对于RIA的重要性。他构建了很多Flex应用程序,从企业内部以业务为核心的系统,到面向外部用户的各种项目。他几乎理解并使用了这个平台提供的所有特性,而这也决定了他非常适合成为一本Flex书的作者。我相信,这本由业内专家亲自捉刀撰写的书,正是读者朋友们期待已久的。
Flex 3的发布,把我们带到了这个框架和这门技术的新阶段。Adobe对Flex平台的很多组件开源,目的就是让Flex尽可能透明化,从而有利于接收来自社区的有价值的反馈(当然,也包括有价值的代码)。
随着Adobe AIR的发布,开发人员现在又可以使用Flex部署桌面和基于浏览器的应用程序了。
Adobe过去曾以其伟大的设计工具而闻名。Flex 3是允许设计人员与开发人员紧密协作的第一个工具,可以为设计出漂亮美观的Flex应用程序提供强大支持。此外,这个框架和Flex Builder中包含的大量有助于提高效率的增强,降低了新开发人员使用Flex的门槛,也有助于他们开发出容易扩展的应用程序。
无论你有什么样的开发背景,也不管你对Flex了解多少,相信本书一定会成为你的得力助手。应该说,任何人都可以从本书中学习到有用的东西。Tariq与另外两位作者Jon和Faisal,为我们奉献了一本必备的Flex佳作。别忘了,本书出自深受人们喜爱、拥有许多必知必会资源的Flex社区——CFLEX.Net的头号人物之手。
Adobe Systems, Inc. 平台推广专家
Ryan Stewart
第一批Processing图书
2009年03月2日 好书
![]() |
Processing: A Programming Handbook Downloads: This book is an introduction to the ideas of computer programming within the context of the visual arts. It targets an audience of computer-savvy individuals who are interested in creating interactive and visual work through writing software but have little or no prior experience. It is the result of six years of software development and teaching experience. The ideas presented have been continually tested in the classrooms, computer labs, and basements of universities, art and design schools, and arts institutions. The majority of the book is divided into tutorial units discussing specific elements of software and how they relate to the arts. These units introduce the syntax and concepts of software such as variables, functions, and object-oriented programming. They cover topics such as photography and drawing in relation to software. These units feature many short, prototypical example programs with related images and explanation. More advanced professional projects from diverse domains including Essays by Alexander R. Galloway, Golan Levin, R. Luke DuBois, Simon Greenwold, Francis Li, and Hernando Barragan Interviews with Jared Tarbell, Martin Wattenberg, James Paterson, Erik van Blockland, Ed Burton, Josh On, Jeurg Lehni, Auriea Harvey and Michael Samyn, Mathew Cullen and Grady Hall, Bob Sabiston, Jennifer Steinkamp, Ruth Jarman and Joseph Gerhardt, Sue Costabile, Chris Csikszentmihalyi, Golan Levin and Zachary Lieberman, and Mark Hansen. If you are an educator, you can request a desk/exam copy from the MIT Press website. It’s also possible to request a PDF preview. |
|
|
|
![]() |
Visualizing Data Ben Fry. Published December 2007, O’Reilly. 384 pages. Paperback. Order from Amazon.com The O’Reilly website says, "How you can take advantage of data that you might otherwise never use? With the help of a powerful new programming environment [Processing], this book helps you represent data accurately on the Web and elsewhere, complete with user interaction, animation, and more. You’ll learn basic visualization principles, how to choose the right kind of display for your purposes, and how to provide interactive features to design entire interfaces around large, complex data sets." Martin Wattenberg from the IBM Watson Research Center says, "This wonderfully detailed guide, by one of the masters of modern data graphics, tells you everything you need to know to code your own visualizations from scratch. Perhaps most valuable are the many examples where Fry demonstrates how to refine a bare-bones concept into a beautiful, effective finished piece. Read this book, and you’ll never again be dependent on someone else’s view of your data." |
|
|
|
![]() |
Processing: Creative Coding and Computational Art (Foundation) Ira Greenberg (Foreword by Keith Peters). Published 28 May 2007, Friends of Ed. 840 pages. Hardcover. Order from Amazon.com Sample chapters available from Friends of Ed. "This book is written especially for artists, designers, and other creative professionals and students exploring code art, graphics programming, and computational aesthetics. The book provides a solid and comprehensive foundation in programming, including object-oriented principles, and introduces you to the easy-to-grasp Processing language, so no previous coding experience is necessary. The book then goes through using Processing to code lines, curves, shapes, and motion, continuing to the point where you’ll have mastered Processing and can really start to unleash your creativity with realistic physics, interactivity, and 3D! In the final chapter, you’ll even learn how to extend your Processing skills by working directly with the powerful Java programming language, the language Processing itself is built with." (Quote from the Friends of Ed website) |
|
|
|
![]() |
Learning Processing: A Beginner’s Guide to Programming Images, Animation, and Interaction Daniel Shiffman. Published August 2008, Morgan Kaufmann. 450 pages. Paperback. Order from Amazon.com Visit the Learn Processing website. Dan Shiffman says: "This book tells a story. It’s a story of liberation, of taking the first steps towards understanding the foundations of computing, writing your own code, and creating your own media without the bonds of existing software tools. This story is not reserved for computer scientists and engineers. This story is for you." The publisher says: "This book teaches you the basic building blocks of programming needed to create cutting-edge graphics applications including interactive art, live video processing, and data visualization. A unique lab-style manual, the book gives graphic and web designers, artists, and illustrators of all stripes a jumpstart on working with the Processing programming environment by providing instruction on the basic principles of the language, followed by careful explanations of select advanced techniques." |
|
|
|
![]() |
Making Things Talk: Practical Methods for Connecting Physical Objects Tom Igoe. Published 28 September 2007, O’Reilly. 428 pages. Paperback. Order from Amazon.com Order from O’Reilly This book focuses on networking electronic devices with Arduino and Wiring, but includes many examples that use Processing for graphics. The O’Reilly website says, |
|
|
|
![]() |
Built with Processing Published 28 March 2007, BNN. 232 pages. Softcover. Note from Casey: “I received a copy of this book from the authors on a recent trip to Japan. It’s a beautifully produced full-color book There’s additional information on the publisher’s website. |
|
|
|
|
|
Processing is also discussed through examples and projects in the following books:
Physical Computing: Aesthetic Computing. Hacking Roomba: ExtremeTech. By Tod E. Kurt. Processing is introduced and used to design an application to control a Roomba (a robot vacuum cleaner). Analog In, Digital Out. |

.png)












为之漫笔(李松峰),本博客专注于Web前后端技术、移动平台开发技术、交互设计和技术翻译。声明一下,因为时常需要外出审稿,而且基本不带笔记本,所以有时可能会迟一点回复大家的留言。