1. 令人望而却步的学习曲线
我们先来看看作为一名合格的前端人员应该掌握或具备哪些技能:
首先就得熟悉HTML,掌握W3C的标准,要学就得学最规范的标准。浏览器最少也要了解四五种,如IE、Firefox、Chrome等。样式也得掌握,以CSS2为主,多看看欧美牛人的风格DIV布局,特简约的那种。可用性也很重要,甭管有事没事总把用户放在心里,再买本工艺美术理论方面的书,有事没事就翻翻,设计个按钮就得花个七八天的时间。交互更重要,现在不是Ajax,就是RIA的,你要是用alert弹框啊,你都不好意思跟人家说去,这样学下去,得学多少年啊?两年时间?那是入门。四年以上?你还别嫌多,就是复杂。认真掂量下这些技术,学好其中的任何一门都要花好几年工夫。什么叫成功的前端开发人员?就是不但代码写得好,还要懂设计,懂美学。所以,前端开发的口号就是:不求最好,但求最全。
2.1. 角色的特殊性
也许有人会问:“为什么一个做页面的人要掌握这么多知识?”前端设计师这个职位有其特殊性:前端作为与用户直接接触的一层,与用户的相关度高,需求变化频繁。用户不会关心数据库是MySQL还是Oracle,也不会关心你是用Java还是用.NET,用户关心的是按钮是否在正确的地方出现、提示信息是否排列整齐等之类的问题。这意味着什么?这意味着前端更需要设计良好的架构。但是由于其自身的特殊性,想要做出良好的抽象是比较困难的,当然也需要日积月累的实践。
2.2. 知识的多元性
对于刚入行的朋友来说,前端开发领域所需要学习的知识非常多,它们犹如一块块零散的拼图碎片,看似存在联系又独立存在。这些知识往往关联性不高,常常还是一些跨领域的知识的融合,这些因素均造成整个前端开发领域的知识的学习很难速成。此外,由于许多前端开发人员的知识面单一,直接造成了前端架构的无序和混乱。
可以说前端开发的学习曲线比较特殊,会存在一个明显的阶梯性的成长过程。在很长的一段时间内,你甚至会感觉自己停滞不前,但是请不要灰心,当你对相关的知识有了一定程度的积累时,你的水平就会上一个新的台阶。