本人从事前端8年了,目前在广州从事架构师。业余总结了很多学习资料,在不断总结的过程中提升自己的技术水平,跟进时代的发展,也想帮助更多想从事前端工作的朋友。本文我会普及一些入门和提升建议,思想提升了,路线明确了自然就可以展开高效学习。

确定方向

做职业规划的目的是避免迷茫,而避免迷茫最有效的方式就是确定明确的方向和目标。

对于任何一个技术岗位,都有固定的两个方向:技术专家(架构师)和 开发经理。前者偏重技术,需要你在当前领域钻研得很深;后者偏向管理,需要你在对技术有很深掌握的同时,可以带领团队完成项目的开发。当然,两者并不是鱼与熊掌的关系,你可以同时成为技术专家和开发经理。

对于技术专家和开发经理两个方向的选择,更多取决于你自身在工作中多巴胺的分泌情况。当你专研技术时,多巴胺分泌得更多,感到更兴奋,或许你会很容易成为技术专家;反之,当你跟团队一起做业务时,多巴胺分泌得更多,更有获得感,那么你可以尝试向开发经理方向发展。当然,你也可能做什么都没有分泌太多的多巴胺,那么,你可以在尝试一段时间后,转型其他职业,例如产品经理。前端作为核心是用户体验,与用户最近的工程师,转型产品经理,阻碍会小一些。况且,文艺型前端布道人豆瓣前端负责人张克军认为,前端工程师正慢慢演变为产品工程师,前端和产品离得确实很近。

做业务还是做架构

做业务,时间要求比较紧,代码质量要求高,可参考的代码比较多,业务知识需要学习。做架构,时间稍微自由,对经验要求比较高,无可参考代码,专业基础知识需要深刻理解;最主要的,做架构的你既是开发,又是用户,还是 PM ,只有 80% - 90% 的明确目标,并在开发过程中不断微调最终的目标。

对于一个新人,其实不用纠结,做业务才是好的选择,而且做 技术含量高、使用流行技术的业务才是最好的。原因很简单,架构的最终的目的是解决业务当中的问题,你没做过业务,哪能知道业务的问题在哪,你都不知道要解决什么问题,如何做好架构。所以,从业务做起,是新人最好的选择,也是唯一可行的选择。而选择有技术含量、使用流行技术的业务的原因更多在于成长,这样你的成长可能会更快、成长道路可能会更直。当然,这只是『可能』,不同的人适合不同的业务,所以不要强求一定『技术含量高、使用流行技术』的业务,更多的而是改变自己,去 适应团队、适应业务,这样才能 更快地成长。

我目前是在职前端开发,如果你现在也想学习前端开发技术,
在入门学习前端的过程当中有遇见任何关于学习方法,学习路线,学习效率等方面的问题,
你都可以申请加入我的前端学习交流裙:前面:851 中间:231 最后:348。
里面聚集了一些正在自学前端的初学者裙文件里面也有我做前端技术这段时间整理的一些前端学习手册,
前端面试题,前端开发工具,PDF文档书籍教程,需要的话都可以自行来获取下载。

技术的学习

说了半天,到了最核心的问题了,对于一个新人如何学习技术?笔者给的建议是:千万不要囫囵吞枣,先把当前使用的技术学透用熟,才是最重要的;千万不要在还没把当前使用的技术吃透之前,去学新的东西,不管新的东西有多火。就像上文所说,不同的框架,有不同的核心,有不同的思想。两个框架代码相似之处的思想不一定相似,例如 Angular 和 Vue 都有双向绑定,虽然效果相似,但是实现思想和内部实现方式是截然不同的。还在入门阶段的你,会被各种思想充斥头脑,反而会更不清楚。

一定的时间后,当你理解透一个架构体系后,你可以 类比地去看 更多的架构体系。这时候,你会发现不同架构很多东西都是殊途同归,理解得很快。

当然,理解透一个架构体系,有人需要一年,有人需要三年,还有人可能需要更长时间。为什么有这么大的区别呢?因为有些人在开发中,并不认为完成就可以了,会在开发中,追求代码的优美,会不断优化自己的代码,让自己的代码性能更好、可读性更高,并通过长时间的积累,达到 量变导致质变 的程度。即使一个特别聪明的人,没有『量』也不可能『质变』的,只不过他的量可能比其他人少而已。

要提醒的一点是,学技术,一定要结合你所在公司、团队的技术栈。

当然,在学习架构的同时,不要忽略两样最基本的东西,一个是 技术基础,一个是 开发规范。

技术基础是一切开发、架构的前提,没有一个好的基础,是无法让你自身的技术水平达到足够高的维度。例如你对于继承理解的并不透彻,你很难理解清晰 React 的内部实现。

对于开发规范,笔者在带应届生时特别注意让他们遵守。代码规范比比皆是,但是很少有人严格遵守。究其原因,多是在代码规范制定之前,已经有自己的一套代码习惯,很难短时间改变自己的习惯。而应届生,一般来说代码并不多,还没有形成自己的编码习惯。这时候,开始遵守一定的规范,会促使他们养成一个较好的编码习惯,为后续的成长打好基础。下面,列举一下开发规范的几点好处,让大家明白代码规范的重要性:

规范的代码可以促进团队合作。

规范的代码可以减少 Bug 处理。

规范的代码可以降低维护成本。

规范的代码有助于代码审查。

养成代码规范的习惯,有助于程序员自身的成长。

主战场 —— 移动混合开发

随着移动浪潮的兴起,业务在移动端App 的需求量迅速扩大,应用迭代更新的频率也随之极速攀升,但与此同时纯 Native 的开发和更新成本成为了业务增长难以逾越的瓶颈。因此,引入一种开发更高效、成本更低的解决方案势在必行。

在当前的移动互联网环境下,iOS 和 Android 上的 App 已经成了每个互联网产品的标配。如果一个用户端产品并不提供相应 App 版本,几乎会直接定义成一个不完整的产品。而被互联网人尊为铁律的『唯快不破』—— 快速开发、高速迭代、低成本上线,同时也是移动时代每个开发团队所追求的目标。综合以上两点原因,『Native 搭台,Web 唱戏』的 Hybrid 开发模式,以『快』的特点赢得了大家的青睐,并纷纷投入大量开发力量,使这种开发模式迅速走红。当前最常见的技术架构方案有以下三种:

基于 Web 的 Hybrid 解决方案:例如微信浏览器、各公司的 Hybrid 方案

非基于 Web UI 但业务逻辑基于 Java 的解决方案:例如 React-Native

基于 Web UI,但是为了追求运行效率,对 UI 展现逻辑和业务逻辑的 Java 进行了隔离的解决方案:微信小程序

前端的未来

对于前端的未来,或者说是互联网技术的未来,我比较认同阮一峰老师的一个观点:将来程序员只分为两类,端工程师 和 云工程师。

端工程师,直面用户,为了用户能更好使用产品而殚精竭虑,包括传统的前端、Native、AR/VR、TV 端开发等;

而云工程师,直面数据,将冰冷冷的数据转化为与用户息息相关的产品,包括分布式、大数据、机器学习等等。

可以看出,未来前端,大前端,在2020有更多的发展性,现在学习前端,是最好的时刻。

希望本文对你有所帮助,有句话叫做“方法不对,努力白费”所有的前端大神都有自己的学习方法,而学web前端的学习也基本一致,而对于一个什么都不懂的初学者,根本不会知道该怎么学,这也是造成失败的最直接原因。如果你处在迷茫期,找不到方向。

8年架构师针对web前端小白,作出的职业规划建议相关推荐

  1. 给前端应届生的职业规划建议

    林洋,YMFE 资深前端工程师,负责去哪儿网 Hybrid(Hy).React Native(QRN)等移动端方案架构.开发和推进,负责一系列基于 Node 的开源平台(YIcon.YApi 等).开 ...

  2. 写给前端应届生的职业规划建议

    林洋,YMFE 资深前端工程师,负责去哪儿网 Hybrid(Hy).React Native(QRN)等移动端方案架构.开发和推进,负责一系列基于 Node 的开源平台(YIcon.YApi 等).开 ...

  3. 前端晋升ppt_【PPT】快手前端架构师分享:前端发展史

    原标题:[PPT]快手前端架构师分享:前端发展史 2019年8月28-29日在台北国际会议中心举办ModernWeb2019上,由快手前端架构师@俞天翔分享<从网页到应用 - 所经历的前端发展史 ...

  4. Web前端小白入门指迷

    大前端之旅 大前端有很多种,Shell 前端,客户端前端,App 前端,Web 前端和可能接下来很会火起来的 VR 前端等.当然在这篇文章,集中讨论一下身为小白,我们怎样去了解 Web 前端,以至达到 ...

  5. python爬虫架构师之路_一位资深 架构师大牛给予Java技术提升的学习路线建议

    一位资深 架构师大牛给予Java技术提升的学习路线建议 对于工作多年的程序员而言,日后的职业发展无非是继续专精技术.转型管理和晋升架构师三种选择. 架构师在一家公司有多重要.优秀架构师需要具备怎样的素 ...

  6. web前端工作有哪些职业发展方向

    Web前端开发到最后就是要走全栈开发的道路了,全栈开发以NodeJS作为服务端语言,基于NodeJS实现的服务端框架有Express,KOA,目前也发展的越来越成熟.既然讲到全栈开发,肯定会通过服务端 ...

  7. 学web前端开发写给新手的建议,超实用

    随着互联网的发展,Web前端开发成为目前最火热的岗位.Web前端开发的技术知识也是在不断更新,致使Web前端开发工作变得越来要复杂:以前,只要会编写HTML, CSS 和Java就能够找到一份不错的前 ...

  8. Web前端小白了解这些学习秘诀,你也能成为大神!

    新手们有一个常见的错误就是犹豫于判断哪种编程语言是做好的.最该先学的.我们有很多的选择,但你不能说那种语言"最好".我们应该理解:说到底,什么语言并不重要.重要的是理解数据结构.控 ...

  9. 阿里P7架构师要求:Web核心+开源框架+大型网站架构!含面试题目!

    阿里P7技能(一):数据结构和算法: 常用数据结构:链表.堆与栈.哈希表等,常用的排序等. 掌握:精通 阿里P7技能(二):java高级 java相关的高级特性:JVM.多线程高并发.网络等. 掌握: ...

最新文章

  1. html5 postMessage解决跨域、跨窗口消息传递
  2. [題解](最小生成樹)luogu_P2916安慰奶牛
  3. Java反斜线(\)路径与转义字符的小坑
  4. Spring-AOP @AspectJ进阶之命名切点
  5. 【模型解读】深度学习网络之Siamese Network网络
  6. 利用string 字符串拷贝
  7. kettle 空字符串 null问题解决
  8. linux用户组登录,linux用户和用户组
  9. java appt,(转从ajava)打开ppt
  10. python输出大字号汉字_Python中输出ASCII大文字、艺术字、字符字小技巧
  11. python的装饰器迭代器与生成器_详解python中的生成器、迭代器、闭包、装饰器
  12. iOS------自动查找项目中不用的图片资源
  13. 常用算法案例之贪心法(C语言)
  14. 实现微信小程序版本管理
  15. 人工智能的十大应用方向是哪些?
  16. uniapp对接腾讯即时通讯TIM 发图片消息问题
  17. 进大厂必备的Java八股文大全(2022最强精简易懂版)
  18. MATLAB 最小二乘法
  19. 手把手教你怎样将win10普通版本升级到最强悍版本win10专业工作站版本
  20. python 图灵机器人

热门文章

  1. 软件路由测试,软路由测试
  2. 谷歌游览器插件html5,谷歌丢弃浏览器插件,全面开发html5
  3. python读取多个txt文件数据恢复_带有Pandas的Python 2.7:如何恢复两个数据帧...
  4. c语言字符串怎么转为正数,把字符串转换为与之等价的整型值
  5. TopCoder Arena 及其插件安装(转)
  6. 用到的lib、dll整理
  7. C# 数据类型 数据转换 自己的见解和方式
  8. APICloud App定制平台的操作指南
  9. Oracle分析函数、多维函数和Model函数简要说明,主要针对BI报表统计
  10. secucrecrt配置文件导入和保存