web前端开发前景和将来!

对于web前端开发,对现今前端的发展,中国的发展还很落后,中国没有Jquery,没有Node.js,其中最主要的一点是,中国的前端比较封锁,你们都没有分享的觉悟。回头看看,那些发展比较快的行业、软件,为何发展那么快,最重要的他们愿意分享,开源本身的代码。我很喜欢作前端开发。要说作业务是挑战本身,作前端开发也是很挑战本身的,由于信息更新速度很快,要断的学习,去研究。下面是我来网上转来的一篇文章,写的颇有道理。但愿咱们作前端开发的人心能静下了,好好的学习。由于要学习的知识太多了。在这里我说一句,三百六十行,行行出状元!css

    关于一个WEB前端的职业规划,实际上是有各类的答案,没有哪一种答案是彻底正确的,全凭本身的选择,只要是本身选定了,坚持去认真走,就好。在这里,我只是 简要说一下本身对于这块儿内容的理解。有一个观点想要分享给你们的是:任何规划和目标的实现都依赖于知识的积累,而知识的积累来源于学习及学习后大量的实 践。我提供一个实践途径,咱们能够在工做之余的时间在网上或外包公司那里接一些私单作,由于目标不是赚钱,咱们能够用最低的价格来提高自身竞争力,得到大 量订单就意味着得到大量的实践机会,同时,还有一些收入做为工做成就感以外的安慰奖,仍是不错的。前端

1、职业方向定位程序员

首先,只有肯定好本身的职业方向,才能作好职业规划。在我看来,作WEB前端技术可以找到的职业方向有如下几种:web

(1)资深WEB前端工程师编程

    这个方向算是一个WEB前端最基本的选择了,在国外,不少老外都可以把本身的专业作到极致,能一生就在一个专业领域不断学习和积累。主要在于内因和外因 两方面,内因是老外一般思想比较简单直接,容易一直专一于一个领域;外因是国外的环境很好,可以良好的支撑这样的职业发展道路。反观国内,从内因来 讲,WEB前端技术人员仍是蛮浮躁的,一般会由于WEB前端知识的更新速度太快而以为学习起来辛苦,最终转向后台或其余道路。从外因来说,WEB前端人员 没有得到公平的待遇,可能从HTML页面制做就开始并沿袭下来的,历来WEB前端人员都比后端人员低一等,貌似前端就是“浅显”的代名词、后端就是“深 奥”的代名词,这也直接造就了前端人员的收入没法和后端人员媲美,同时直接影响到前端人才市场的活跃程度。另外一方面,前端的技术入门较容易,形成另外一个极 端状况:人员泛滥、人才稀缺。我想对全部的WEB前端工程师说:面包总会有的,要耐得住寂寞!我我的比较推荐这个职业发展方向,由于,在这个方向下,只要 足够耐心、厚积薄发,成功的几率是很是高的。同时,这是一条最单纯的路,咱们更多的是花费精力在技术的钻研上,而不是办公室政治等其它杂事。后端

(2)资深WEB架构师设计模式

    说功利点儿,我喜欢这个方向,既兼顾了工做的单纯性、又可以减小实际Coding的工做量能腾出更多时间钻研技术。在国内,WEB前端工程师遇到较多的状况是老是反复编写着一样的代码,老是面对着一样的技术和产品,容易感受枯燥。因为咱们拥有最为普遍的WEB相关知识沉淀,使得咱们更加容易成为一名架构 师。这个职业发展方向不如第一种来得平滑,主要是做为一名架构师不得不学习:后端技术、DBA、Platform等内容,而这种学习一般须要实际操刀作项 目,不是本身在家里写两个Demo就好的,这就势必会遭遇一段时间的阵痛期。虽然不是很平滑,可是,对于一个大局观好、悟性好、知识面广的前端工程师,我 推荐大家努把力,走一条光荣的架构师之路吧。网络

(3)本身创业前端工程师

    其实,本身创业是最好的道路、也是成功率最低的道路,挑战和机遇并存。这里,做为一个前端技术人员,须要将本身的视野更多放在行业的动态、产业链的动态、 相关产品领域的动态,把关注细节的优点继续保持,同时,加强本身把控一个产品乃至一个公司命运的能力。可是,这条道路和技术之路稍有分歧,后续将再也不赘 述。架构

(4) 转岗管理或其余

    因为这条职业道路和WEB前端技术之路关系不大,故而,这里不作过多讨论,可是,不管是否走上这条道路,我以为对于任何技术之路,更好的大局观、更普遍的 视野是良好发展的必备条件,拥有良好的大局观和更普遍的视野别无他法,只能不断的进行知识的横向拓展和积累,同时,多在横向拓展知识的时候进行实践,把知 识变成技能。

2、职业发展目标

     我都有一个最终的目标,在这个目标之上,咱们须要给本身制定一系列学习和成长计划,制定的方法以下:

第1、梳理知识架构;

    梳理知识架构的目的在于,咱们要了解清楚,哪些技术是前置、哪些技术是后继,那些技术是深度、哪些技术是广度,按照这两个维度梳理好知识架构以后,咱们才能准确地制定清晰的成长目标、高效的成长计划。

2、职业发展目标

     我都有一个最终的目标,在这个目标之上,咱们须要给本身制定一系列学习和成长计划,制定的方法以下:

第1、梳理知识架构;

    梳理知识架构的目的在于,咱们要了解清楚,哪些技术是前置、哪些技术是后继,那些技术是深度、哪些技术是广度,按照这两个维度梳理好知识架构以后,咱们才能准确地制定清晰的成长目标、高效的成长计划。

第2、分解目标;

    我认为,大抵可分解为三个阶段,包括:起步阶段、提高阶段、成型阶段。这三个阶段分别对应着不一样的目标:

起步阶段:

一、基本知识的掌握

    在咱们梳理的知识架构中,按照咱们分析的两个维度里最前置的、最浅显的部分,做为打基础的阶段,必需要在这个过程当中更多投入到实践中去,咱们一般作的多了、熟练了,就认为这部分知识和内容掌握

二、经常使用工具的掌握

    对于经常使用工具的掌握应该掌握一些有大公司或专业团队背景的流行工具,这些工具的熟练掌握可以提高专业度、职业度,同时,能提高咱们的工做效率。咱们只有在 检验本身对于知识和技能熟练程度的时候,才会自虐式的用Notepad去编写页面、css和脚本等内容。

三、沟通技巧的掌握

    一般作技术的人会被定位为“不善沟通”的人,这是为何呢?究其缘由,主要是由于多跟程序和代码打交道,跟人的沟通较少致使。这种时候咱们要特别注意增长 和人沟通的机会,着重提高这块儿的能力。另外一方面,咱们一般被称为“不懂沟通技巧”的人。做为一个技术人员,包括我本身,彷佛天生就有一些难以接受挑战的 缺陷。在国内,咱们的技术人员一般都是本身制定方案、本身执行方案,在执行过程当中又缺少相关产品、交互设计等人员的沟通,大可能是在本身的思路贯彻下进行开 发,长此以往,咱们习惯于信任本身的观点、在本身的视角看问题,对于挑战老是百般地“据理”力争。咱们须要更多提高的是,如何在对方的视角看问题、如何在 用户的视角看问题。

四、良好的开发习惯

    开发习惯是养成的,一旦有很差的习惯,对于未来去修正带来的将是很大的麻烦,咱们在培养良好开发习惯必定要从起步时作起,例如:写代码以前先分析、先写文 档、先写注释。定义变量最好能用直接可理解的语义,最好是拼音,别整英文,尤为是生僻单词,未来本身忘了还要开金山词霸。文件最好有有意义的文件夹命名来 管理,文件名最好有意义,须要版本号的最好能和项目版本号一同更新……等等。

提高阶段:

一、高级技术的掌握

       在提高阶段对于知识和技能掌握,咱们须要从梳理好的知识架构中选择更深一层次的技术进行学习,选择以前,咱们先经过类比或预估的方法,衡量自身学习的难点,以学习难点和本身最不感兴趣的部分为主。这样推荐你们的缘由是:这个阶段咱们兴趣正浓,已经度过了苦涩的起步阶段,到达了兴奋的提高阶段,咱们要用兴趣和兴奋去挑战最困难的部分,在咱们信心受挫和兴趣浓厚之中找到平衡。同时,辅以其余的深层次知识一块儿学习和研究。

二、产品思想的学习

    没有正确的产品思想,很难设计出良好的程序,不管从界面、交互,仍是接口、逻辑,不可以理解产品、理解用户需求,咱们会给本身形成很大的麻烦,例如:咱们 千辛万苦用最新技术、最复杂的实现作出的功能,却得不到使用者或领导、同事的承认。为了使咱们的工做和学习更加有效率、避免无用功,咱们须要不断的学习产 品的思想,只有理解了产品的思路,咱们才知道用咱们的技术去输出什么。

三、各类框架的学习

    框架是咱们提升工做效率的优秀手段,对于框架的学习是成长必经之路。咱们学习框架的路线一般应该是:使用——》分析——》个性化定制——》模仿编写本身的框架。只有大量的使用,才能明白设计框架者在设计背后的思路,只有了解到设计的思路,才能作正确全面的分析,只有正确全面的分析才能支撑咱们去对其裁剪或 扩展,只有通过实际分析、修改别人的框架,才有可能写出优秀的、本身的框架。学习一般的路线是:学习、理解、模仿、创造。

四、富客户端应用的学习

   随着带宽和计算机性能的提高,以及WEB2.0的如火如荼,富客户端应用充斥着互联网,若是你不懂得富客户端应用,你就不能称之为一个合格的前端技术人 员。能够按照:Flash动画—>Flash编程—>Flex—>Air—>Silverlight动画—>Silverlight编程 的步骤学习,先学Flash后学Siverlight的缘由,一来Silverlight还不太成熟,二来,实际Silverlight借鉴了不少 Flash的思想,最好在学习的时候不要本末倒置。

五、各类网络协议的学习

    WEB前端技术就是云上的技术,云的协议有N种,咱们应该着重学习:TCP/IP,UDP,HTTP,POP3,SMTP这几种协议,在开发WEB前端应 用过程当中,这些协议是咱们的技术的载体,有时候决定了咱们的应用是否能实现、有时候决定了咱们的应用是否高性能,同时,这些协议仍是咱们和后端技术交互的 重要手段,这些协议就像是密码字典,帮助咱们把后端传输过来的密文解释成咱们前端技术可以理解的明文。

六、程序设计

    这个阶段咱们须要学习OO、UML、设计模式、设计方法……,咱们要让技术开发工做变成有目的性、有计划性,而且,这些目的和计划必须有理论的支持,这 样,咱们设计出来的程序才可以更优秀、咱们的开发才更有效率,这样,咱们的技术才能有所提高。为何要学习程序设计呢?主要是,就算咱们不用Flash的 ActionScript编写程序的前端逻辑,咱们至少要把咱们本身的Javascript函数、包的定义规划起来,避免未来本身或他人维护代码的时候出 现问题。程序设计能力,在技术人员仍然被看做是程序员的这个年代,是灰常、灰常重要滴。

成型阶段:

    到了这个阶段,我也没什么好说的了,若是能达到这个阶段,就证实后续的成长之路是奇光异彩的,是成为一个资深WEB前端工程师,仍是成为一个资深WEB架 构师,亦或其余,都要具体分析自身的特色和兴趣所在。若是是资深的前端工程师,我以为更重要的是去做新技术的研究,互联网技术发展速度突飞猛进,不断学习 新技术,不然就被淘汰。此外,我建议在知识的广度、深度方面最好能挑选一个本身最擅长和最感兴趣的一两个领域深刻钻研,不要挑太多,多而不精。若是是资深 的WEB架构师之路,我建议要深刻了解后台技术,这种深刻了解必定要伴随着实际的项目开发,基本方法是:按照别人设计的架构实现几个Server—>自 己设计并实现几个Server。