关于学习 Flex 的一点建议(转载)
Flex是什么?RIA(Rich Internet Applications)。Flex 是 Macromedia发布的presentation server(展现服务),它是java web container或者.net server的一个应用,根据.mxml文件(纯粹的xml描述文件和actionscript)产生相应得.swf文件,传送到客户端,由客户端的flash player或者shockwave player解释执行,给用户以丰富的客户体验。说这么多,还不如看实例:
苹果树下:http://appleshow.cc/tuya/
DIYINN:http://www.diyinn.com/products_assortment/1.html
这个需要进去再点“使用该产品制作个性化产品”才可以看到界面
引用内容
现在不少人开始关注并学习Flex了(至少比以前多了),但是现在关于Flex的资料并不多,国内的资料就更少了,而且Flex的论坛人气都差的很,一眼望去全都是提问帖子,回帖超过5个的寥寥无几,惨不忍睹啊。我翻译一些东西也是为了增加中文学习资料,不过真正想要学习最好还是趁早习惯了英文,去看英文文档以及英文Blog。我不是什么专家牛人,我技术水平差的远,但是我学习Flex的时间算是比较长的了,所以在这里给初学者提一点学习建议,希望能帮助大家少走点弯路。
一、起步
1.了解Flex以及相关的东西。
一开始你最好先搜索一下Flex到底是什么,有次我居然看到有人问Flex 和 Flex Builder 有什么区别,faint。建议大家最好是先看看Flex白皮书,看一些介绍Flex的文档,先把FDS,Flex SDK等东西搞清楚再说。
2.初级
了解了基本概念之后,开始进入学习了。初级教程还是挺多的,比如 Flex Quick Starts 以及Adobe官网上的初级教程。Flex Quick Starts 中文翻译在Adobe 中国(http://www.adobe.com/cn/devnet/flex/?tab:quickstart=1)上可以找到。其中有很多示例,那些示例你最好一行一行的敲出来,然后运行看看结果,不要直接复制。初学任何东西的时候都不要复制别人代码,偷懒也要看情况。
看完Flex Quick Starts之后,应该对Flex中的组件布局,事件机制等有了大概了解了。这个时候建议你了解一下 Flex 中的各种控件。官方有一个介绍各种控件的非常好的例子:Adobe Flex2 Component Explorer ,依然建议把所有代码敲一遍,至少对每个控件的样子以及容器的布局方式有个印象,到时候你需要什么的时候就自然想到某个控件。
了解了控件之后,应该了解一下ActionScript 3.0了,这个东西比较强大。如果你以前没有接触过AS,那么建议你认认真真看一下AS 3.0 的基本语法以及各种数据类型,虽然每种语言基本都是相通的,但是至少还是有点区别的,如果自以为是很容易就吃亏。
3.进阶
经过了一些练习对MXML,AS3.0 应该都比较熟悉了,接下来就是看一些高级教程 + 模仿示例代码了。高级教程Adobe Flex Developer Center上有不少,应该看。而且Adobe 自带的那个 Flex Store 也是个很好的例子。很多国外的Flex开发者都会将自己做得小例自提供源代码下载,所以示例代码不难找。在模仿别人代码的时候要注意别人的一些编程思想,比如组件之间如何通讯之类的,看多了代码以后遇到类似问题解决方案自然就出来了。
(BTW,我现在就处在进阶阶段,并且将会长期处于进阶阶段)
以上是关于如何学习Flex的,下面我说一下学习过程中碰到问题的解决方案。
1.查看帮助文档。帮助文档是最好的教程,里面的东西多了去了,不要碰到问题就去别的地方问,应该先看帮助文档。我学了Flex才发现任何大型软件的帮助文档都是最好的教材,你把帮助文档看透了就已经远远超过初学者了,市面上那些教材基本全都是抄袭帮助文档,个别好书除外。所以遇到问题先去搜索一下帮助文档,如果哪个概念有问题,就把相应的章节仔细地看一遍,保证你有收获。
2. Flex 邮件列表。 遇到帮助文档无法解决的问题不要去国内的论坛提问,不是我对国内的论坛有成见,而是事实确实如此,像Flex这种东西的问题没有人会理你,国内牛人都很忙,没空回答问题的,这点大家应该都了解,所以建议大家直接去加入雅虎 Flex 邮件列表。在回答之前先搜索一下以前别人的邮件(这里搜索:http://www.mail-archive.com/flexcoders@yahoogroups.com/),一般你不太可能那么幸运,你碰到的问题别人基本都碰到过而且很可能得到了解答,所以基本上一些小问题都能搜索出来,而且在提问之前先搜索一下也是礼貌,最好不要浪费别人的时间来回答重复的问题,虽然里面有很多热心的人。找不到就发邮件提问,邮件列表里高手如云,还有Adobe Flex开发小组的Matt Chotin等,你的问题不太可能得不到解决,顺便还能练习英文写作。
除了以上这些建议之外,建议大家平时多去MXNA 和Flex Blog(关于Flex的Blog你可以在http://www.flex.org上找到,这里提醒一下,不要在那些开发者Blog上提问与文章不相关的问题,那样很不礼貌)看看,MXNA上的新闻值得关注,而且经常有人写一些初级和高级教程的,而且还附带源码下载的,而且写这些教程的一般都是高级开发者(迫切期待国内高级开发者也能抽空写初级教程),相信经常关注你会受益匪浅。
最后声明一下,我是一个初学者,技术水平一般,只不过是翻译了一些Flex教程,而翻译的功劳大部分可以归功于金山词霸和Google翻译。所以大家如果遇到问题后查找帮助和邮件列表都得不到解决,那么我肯定也无能为力,所以请大家以后不要到我Blog上提问了,多谢大家。不过还是希望大家能喜欢我翻译的东西,以后我会更努力的。