转贴:国内Flex就业前景与现状,以及学习标准分析

上一篇 / 下一篇  2010-10-17 23:35:43

前言:本文仅代表个人观点,没有专业数据拷证,仅供参考.

写下这个标题大家一定以为我是只FLEX老鸟,不然不敢这么高声说话,而且是在JAVAEYE里.我知道JE里高手很多.有很多人都对FLEX有秀深的见底,写此文是为了回答一些朋友对我的提问.

有很多想转行的开发者都问我这样几个问题:现在招FLEX的公司多吗?搞FLEX开发工资高吗?怎么样才算是FLEX入门了?怎么才称得上是FLEX高手?

针对这些问题,有些我还真不好给出确定的答案,但我对FLEX的一些了解或许可以组大家一些参考,下面我罗列一下个人对FLEX就业及学习的相关认识.

一:flex总体需求
总体来讲FLEX的需和求当前都不够旺盛,当然这个是相对于其它主流技术,以及国内的整个平均情况而言.不排除个别地域有较旺盛需求,后面再讲;

FLEX需求不够旺盛的原因:

1.企业未能真正接受FLEX
主要还是企业还没有真正了解FLEX不敢大胆偿试用FLEX来进行开发,大多数公司出于项目风险的角度考虑,依然尽量采用旧的有把握的技术来开发,比如(AJAX,STRUTS.....);

2.企业接受FLEX,但还处于偿试阶段
我有幸通过网络接识到一批FLEX的爱好者,当然其中很大一部分现在都是JAVA开发者,通过他们我了解到他们公司只是很小的项目才考虑用FLEX来开发,大型目几乎不会考虑FLEX.

3.国内缺乏FLEX应用开发的先行者
我没有经过深入调查研究,但通过案例来看,国内大的成功FLEX的案例相对来讲极少,可见国内采用FLEX先行企业较少,据我所知国内走在FLEX应用前列的企业除了ADOBE(中国)之外,我本人认为上海群硕应该算是领头羊了,央视直播网全部采用FLEX技术实现,给了FLEX开发者们更多的热情.为了避免做广告的嫌疑,群硕的相关种种我就不多说了,我的观点已经很明确,FLEX需要更多的先行者.更多的成功CASE,给中小型企业,给不了解和未曾深入了解FLEX的企业以信心.也给开发者以信心.

4.拒绝FLEX
导致拒绝的有以下几个原因:
a.FLEX加载太慢,与国内的用户带宽瓶颈不适应;
b.部分企业(程序员)选择FLEX竞争技术,比如MS的sliverLight,javaFX.....
c.部分企业(程序员)不看好FLEX的前景,认为FLEX是一种过渡技术,肯定会有其它技术来取代它;

5.FLEX自身的原因
技术方面的问题不在本文讨论之列

归纳以上几点:企业和开发者们形成了,不急着用也不急着学;想用但又不敢用,总体处于观望趋势.

FLEX在国内的应用现状及薪水状况:

虽然ADOBE曾放出FLEX是为企业应用量身定做,但FLEX的横空出世,似乎还是和FLASH如胶似漆,不单单是说FLEX是面向开发人员的FLASH.很多企业似乎有意识地将FLASH和FLEX混为一"谈",我经常在招聘网上看到有些企业招聘,职位就是FLASH&FLEX开发工程师,既要求高水平的美工,又要求精通AS,有的对后台程序,数据库也有所要求.且不谈此招聘有无问题,至少我个人对这样的招聘很"害怕",害怕进去之后被要求做动画给"难住".这里就说明有些企业没有清楚认识FLEX,或者说对FLEX项目实践没有较清晰的认识.但纵观国内的FLEX应用,大致包括以下几个方面:

1.游戏,这是国内应用气焰较高的一个方向了,而且待遇也相对要高.北京,上海这方面需求相对比较旺盛,待遇一般在(6K-1W以上),深圳,广州一般在6K左右,其它城市需求相对较少,未知;

2.企业应用,这是ADOBE力顶的一个方向,但在国内还未形成气候,需求还是以北京上海居多,深圳,广州次之.北京上海一般和JAVA程序员待遇相当,深圳广州仅次于JAVA待遇大多在3K-5K,(广州更偏向动画,一般都有这方面要求)

3.互联网应用,网站里运用部分FLEX技术的有,淘宝就是典型,但这只是个别现象,网站上还是FLASH的居多.

归纳以上几点:到目前为止,真正能拿到稍高薪水的FLEX开发者还是做游戏的,FLEX做应用的狂热时代还没真正到来,所以待遇方面和其它技术相比并无所谓优势可言.

关于FLEX的学习,我有两个我自认为非常重要的观点:

1.FLEX很简单,很适合初学者入手,而且生动有趣,刚开始学习很有成就感;

2.FLEX更适合JAVA开发人员.不仅AS3语法上号称是简化版的JAVA,而且FLEX做为前端技术与强大的后端JAVA以及同时在企业应用上的配合堪称无双组合.

至于怎么样才算是FLEX入门才能出去找FLEX的工作?

这里我想与标题里的学习标准结合起来,你定位自己为哪一层次,就努力掌握哪一次层的相关知识!

其实当时我给了他这样的答案:

1.熟悉了FLEX的基本语法;

2.熟练使用FLEX的内置控件;

3.熟悉定义CSS来改变控件外观;

4.熟悉FLEX的事件机制;

5.熟悉FLEX与后端通讯的三种机制;

6.熟练AS3对XML的解析;

7.会查FLEX的API文档;

至于要出去找工作:我又补弃了下面两点:

8.能够自定义事件;

9.能够自定义或重写组件;

10.最好能了解后台编码或工作机制.

其实对于有JAVA经验的朋友来讲,上面的一切都变得非常简单至少前七点和第十点不用费劲儿了,着重弄明白第8,9两点就行了.

当然这上面的十点,是我对初级FLEX开发人员的定义;顺便说下我对中级和高级FLEX开发人员的理解

中级开发人员还必须具备以下几点额外的要求:
1.了解FLASH ,能用FLASH制作控件皮肤(其实并不需要高深的FLASH技巧,和美工);

2.能够灵活控制FLEX的外观(其实包含了在初级里3,9两点);
能够非常灵活的运用自定义的事件机制来进行组件间的通讯.

3.非常熟练地与JS通讯;

4.最好能够掌握JSON等XML数据交互方式.

5.理解webService

6.熟练地进行MOdule间的通讯

7.有一定的后端开发水平(我认为FLEX开发者若能掌握后台开发知识,在前台的数据通讯设计上会做得更好)

8.会基本的SWF优化

9.至少有两个及以上的项目实战经验(一年以上);

10.最好会使用pureMVC等框架

(感觉总结得不够精炼)

至于高级开发者我认为要有以下方面的额外要求:

1.能随心所欲地控制组件外观及行为方式;

2.能够定义出灵活和极具扩展性的事件和组件模型;

3.能够合理组织项目源码文件结构;

4.能够设计出与后台很合谐高效的数据交互;

5.能够熟练运用框架或自定义逻辑实现代码的分层,从而保证前台的代码结构足够松散,便与扩展;

6.能够把握SWF运行的整体性能,灵活运用FLEX的RSL,module等机制来"瘦身"以及通过组件间容器的嵌套层次,组件间的合理布局和合理的绝对或相对定位等技巧来实现性能优化.

7.熟悉后台的开发知识.并掌握主流的后台开发技术.

8.两年以上FLEX项目开发经验

不同层次的开发人员,还要具备一定的职业素养,比如做FLEX,对WEB基本知识都要知道吧,这些我就必多说了.

上面是本人对FLEX相关问题的肤浅认识,感谢大家的阅读,欢迎大家拍砖!


TAG:

 

评分:0

我来说两句

Open Toolbar