现在富web应用已经是个大趋势,越来越多的传统客户端应用都相继被web应用所替代。但是鉴于web应用的弱交互性,很多业务负责、人机交互强的应用纯js还是不能很好胜任,这恐是目前还有很多活跃cs应用存在的一个主要原因。前不久,公司也在做艰难的选择web应用前台开发框架选型问题,最后选择了Adobe的Flex。个人认为Flex就是一个桌面应用web化的天生利器。通过将近半个月的学习,可以说对Flex已有大概了解,于是写下本文,主要阐述了Flex简要介绍、flex和flash等关系和flex学习建议。
1、 flex概要介绍
官网flex.org上有what’s flex的英文介绍,大概就是下述意思。
Flex 是一个免费的开放源框架,可用于构建交互性较高、具有表现力的 Web 应用程序。Flex 提供一个现代、基于标准的语言和编程模型,该模型支持公共设计模式。使用基于 XML 的声明性语言 MXML 描述 UI 布局和行为,使用面向对象的 ActionScript® 3.0 编程语言创建客户端逻辑。Flex 还包含一个丰富的组件库和一个交互式 Flex 应用程序调试器,组件库中的上百个久经考验、可扩展的 UI 组件可用于创建富 Internet 应用程序 (RIA)。使用 Flex 创建的 RIA 可运行于使用 Adobe Flash Player 软件的浏览器中,或在浏览器外运行于跨操作系统运行时 Adobe AIR® 上,它们可以跨所有主要浏览器、在桌面上实现一致的运行。
2、 flex、flash、actionscript、flashbuilder、air之间的关系
actionscript:是一种开发语言,在开发语言排行榜上,2010年4月的开发语言排行榜其已经位居19位了,服务于flex、flash、air;
flashbuilder:可理解其为IDE,服务于flex,在flex3.0其为flexbuil,4.0改名为flashbuilder的;
flex:面向web应用开发做了封装,尤其是提供了数据访问组件、大量的类windows控件;
flash:是个全能工具,强调的是时间轴,但适合于designer,简单的web应用建议用flash来做,借助Flash Lite更是可以开发移动应用;
air:面向桌面应用开发做了封装,区别于flex最大的地方就是系统资源的访问;
3、flex学习建议
1)建议初学者(当然我也是初学者)先访问flex.org,简单了解flex是什么东西,flex如何工作的?
2)由于flex4刚出来不久,网上很多资源都是基于flex3的,为此建议大家直接从flex4入手,不要去理会flex3和flex4的区别,flex3如何升级到flex4等等繁杂的问题,而且起点高是件好事情,何乐而不为。
3)下载flashbuilder4,安装之,也不要搞什么破解之类的(60天试用期,足够了),从网上搞个helloworld的例子,先运行起来看看。
4)至此,对flex应该有了基本认识,已经可以简单的给他人show下了,这时可以学习其根基actionscript(主要了解其变量类型、语法结构、特性)了,现在都是as3,这个以前有编程基础的话,最多一周就可搞定。
5)至此,你已了解flex内功心法了,接下去要做的是flex常用控件使用、数据访问处理等招式学习,同时别忘了经常去光顾下练武场:
http://flex.csdn.net/, csdn flex中文站
http://bbs.airia.cn,flex 中文论坛,社区
http://flash.9ria.com/,天地会flex论坛