也许你现在还是刚接触 web 前端, 也许你现在是个初级的 Web 前端开发工程师, 相信每个人心中都希望自己可以达到年薪 50 万!
今天小编就为各位分享 Web 前端起步阶段, 提升阶段, 成型阶段都应该学习哪些知识? 如何去学习这些知识?
起步阶段
1 基本知识的掌握
在梳理的知识架构中, 按照分析的两个维度里最前置的, 最浅显的部分, 作为打基础的阶段, 必须要在这个过程中更多投入到实践中去, 通常做的多了, 熟练了, 就认为这部分知识和内容掌握了.
2 常用工具的掌握
对于常用工具的掌握应该掌握一些有大公司或专业团队背景的流行工具, 这些工具的熟练掌握能够提升专业度, 职业度, 同时, 能提升工作效率. 只有在检验自己对于知识和技能熟练程度的时候, 才会自虐式的用 Notepad 去编写页面, CSS 和脚本等内容.
3 沟通技巧的掌握
通常做技术的人会被定位为 "不善沟通" 的人, 这是为什么呢? 究其原因, 主要是因为多跟程序和代码打交道, 跟人的沟通较少导致. 这种时候要特别注意增加和人沟通的机会, 着重提升这块儿的能力. 另一方面, 通常被称为 "不懂沟通技巧" 的人. 在国内, 技术人员通常都是自己制定方案, 自己执行方案, 在执行过程中又缺乏相关产品, 交互设计等人员的沟通, 大多是在自己的思路贯彻下进行开发, 久而久之, 习惯于信任自己的观点, 在自己的视角看问题, 对于挑战总是百般地 "据理" 力争. 需要更多提升的是, 如何在对方的视角看问题, 如何在用户的视角看问题.
4 良好的开发习惯
开发习惯是养成的, 一旦有不好的习惯, 对于将来去修正带来的将是很大的麻烦, 培养良好开发习惯一定要从起步时做起, 例如: 写代码之前先分析, 先写文档, 先写注释. 定义变量最好能用直接可理解的语义, 最好是拼音, 别整英文, 尤其是生僻单词, 将来自己忘了还要开金山词霸. 文件最好有有意义的文件夹命名来 管理, 文件名最好有意义, 需要版本号的最好能和项目版本号一同更新...... 等等.
提升阶段
1 高级技术的掌握
在提升阶段对于知识和技能掌握, 需要从梳理好的知识架构中选择更深一层次的技术进行学习, 选择之前, 先通过类比或预估的方法, 衡量自身学习的难点, 以学习难点和自己最不感兴趣的部分为主. 这样推荐大家的原因是: 这个阶段兴趣正浓, 已经度过了苦涩的起步阶段, 到达了兴奋的提升阶段, 要用兴 趣和兴奋去挑战最困难的部分, 在信心受挫和兴趣浓厚之中找到平衡. 同时, 辅以其他的深层次知识一起学习和研究.
2 产品思想的学习
没有正确的产品思想, 很难设计出良好的程序, 无论从界面, 交互, 还是接口, 逻辑, 不能够理解产品, 理解用户需求, 会给自己造成很大的麻烦, 例如: 千辛万苦用最新技术, 最复杂的实现做出的功能, 却得不到使用者或领导, 同事的认可. 为了使工作和学习更加有效率, 避免无用功, 需要不断的学习产品的思想, 只有理解了产品的思路, 才知道用技术去输出什么.
3 各种框架的学习
框架是提高工作效率的优秀手段, 对于框架的学习是成长必经之路. 学习框架的路线通常应该是: 使用 -> 分析 -> 个性化定制 -> 模仿编写自己的框架. 只有大量的使用, 才能明白设计框架者在设计背后的思路, 只有了解到设计的思路, 才能做正确全面的分析, 只有正确全面的分析才能支撑去对其裁剪或 扩展, 只有经过实际分析, 修改别人的框架, 才有可能写出优秀的, 自己的框架. 学习通常的路线是: 学习, 理解, 模仿, 创造.
4 富客户端应用的学习
随着带宽和计算机性能的提升, 以及 Web2.0 的如火如荼, 富客户端应用充斥着互联网, 如果你不懂得富客户端应用, 你就不能称之为一个合格的前端技术人 员. 可以按照: Flash 动画 ->Flash 编程 ->Flex->->Air->Silverlight 动画 ->Silverlight 编程 的步骤学习, 先学 Flash 后学 Siverlight 的原因, 一来 Silverlight 还不太成熟, 二来, 实际 Silverlight 借鉴了很多 Flash 的思想, 最好在学习的时候不要本末倒置.
5 各种网络协议的学习
Web 前端技术就是云上的技术, 云的协议有 N 种, 应该着重学习: TCP/IP,UDP,HTTP,POP3,SMTP 这几种协议, 在开发 Web 前端应用过程中, 这些协议是技术的载体, 有时候决定了应用是否能实现, 有时候决定了应用是否高性能, 同时, 这些协议还是后端技术交互的重要手段, 这些协议就像是密码字典, 帮助把后端传输过来的密文解释成前端技术能够理解的明文.
6 程序设计
这个阶段需要学习 OO,UML, 设计模式, 设计方法......, 要让技术开发工作变成有目的性, 有计划性, 并且, 这些目的和计划必须有理论的支持, 这样, 设计出来的程序才能够更优秀, 开发才更有效率, 这样, 技术才能有所提升. 为什么要学习程序设计呢? 主要是, 就算不用 Flash 的 ActionScript 编写程序的前端逻辑, 至少要把自己的 JavaScript 函数, 包的定义规划起来, 避免将来自己或他人维护代码的时候出 现问题. 程序设计能力, 在技术人员仍然被看作是程序员的这个年代, 是灰常, 灰常重要滴.
"我自己是一名从事了 6 年 web 前端开发的老程序员 (我的微信: webxxq), 今年年初我花了一个月整理了一份最适合 2019 年自学的 web 前端全套培训教程 (视频 + 源码 + 笔记 + 项目实战), 从最基础的 html+CSS+JS 到移动端 HTML5 以及各种框架和新技术都有整理, 打包给每一位前端小伙伴, 这里是前端学习者聚集地, 欢迎初学和进阶中的小伙伴 (所有前端教程关注我的微信公众号: web 前端学习圈, 关注后回复"2019" 即可领取).
成型阶段
到了这个阶段, 我也没什么好说的了, 如果能达到这个阶段, 就证明后续的成长之路是异彩纷呈的, 是成为一个资深 Web 前端工程师, 还是成为一个资深 Web 架 构师, 亦或其他, 都要具体分析自身的特点和兴趣所在.
如果是资深的前端工程师, 我觉得更重要的是去作新技术的研究, 互联网技术发展速度日新月异, 不断学习新技术, 否则就被淘汰. 此外, 我建议在知识的广度, 深度方面最好能挑选一个自己最擅长和最感兴趣的一两个领域深入钻研, 不要挑太多, 多而不精.
如果是资深 的 Web 架构师之路, 我建议要深入了解后台技术, 这种深入了解一定要伴随着实际的项目开发, 基本方法是: 按照别人设计的架构实现几个 Server-> 自己设计并实现几个 Server.
完成以上三个阶段的历练, 相信你可能能成为 Web 前端的佼佼者! 小编祝你早日思想年薪 50 万的梦想!
来源: http://www.jianshu.com/p/523916e67ccb