我是后端,要学前端嘛?
大家好,我是鱼皮。分享 星球 里一位鱼友的提问:
问题
鱼皮你好,主要想问你一些学习方式。我想从事后端方向,但是现在后端懂前端已经是很常见的了吧。所以我想有空也接触一下前端。现在不知道前端应该从哪里入手,看了星球的知识路线挺长的,感觉应该是为前端选手量身打造的。作为后端选手,有哪些前端技能你认为应该掌握?还有就是你有没有什么书籍可以推荐?我比较喜欢看书,没有的话视频也行。
鱼皮回答
总结一下,主要是 3 个问题:
作为后端,要学习前端么? 后端要学习哪些前端知识? 后端应该怎么学习前端?
相信这也是很多小伙伴关注的问题,印象中很多小伙伴都在喊着自己要成为全栈工程师(前端后端都做的那种)。
我自己虽然侧重后端,但也一直在用前端开发项目,所以在这个问题上,可以结合自己的经历,说说看法。
1
首先,后端会前端肯定是更好的。
单看这半句话来说,就是废话。因为无论你学什么知识,肯定都是学的越多越好。
而我们要考虑的核心是 性价比 。即:后端学到什么程度再去学前端?
对于初学编程的同学来说,我更建议大家先一条路地去入门单个编程语言或方向,这有助于大家更快地做出完成的作品,提高对编程的兴趣。而且从求职面试的角度来说,对于大部分公司,可能只需要纯后端或纯前端,所以你朝着一个方向去学习一般能够更快地达到公司的要求。
现在大家也一直在说学 Java 太卷啦,要不要转 C++、要不要转 Go 等等。其实不用过于纠结,尽可能地专注一个方向,在这个方向学的比其他同学深一点,而不是反复横跳,你才会更有优势。
所以我的建议是:如果你以后端为主,在你没有达到后端的入职标准、后端知识没玩明白前,不要抽大量的时间去学前端(时间紧的话不学前端也完全没问题)。
后端同学建议学完我 Java 学习路线上的 Spring Cloud 微服务章节。
当然,如果你时间足够并且觉得自己后端学习进度 ok 了,那抽小部分时间自学前端也是很不错的。(所以想学好编程,很重要的一点就是 做好时间规划。)
毕竟技多不压身嘛。
从我自己的经历来看,会前端的好处是可以和前端配合 & 沟通更顺畅。可以站在更高层、全局地角度去设计项目整体的前后端实现方案。
比如我曾经和某前端同学合作时,他提出了一个方案,对我们彼此都很麻烦。后来我帮他想出了一个前后端都轻松的方案,大家都很 happy,而如果不懂前端就会被他的方案牵着走了。
此外,还记得之前我在星球直播带开发 伙伴匹配系统项目 时,给每个请求单独写一个接收参数的对象。如果不了解前端或者没和前端对接的同学会觉得这样做很麻烦。但其实这样做之后,自动生成的接口文档会更干净。前端看了才会更清晰自己要传什么参数(也更安全),对你的印象也会更好。
所以还是很建议入职之后的小伙伴,尤其是想晋升高工级别、想当 Leader 或项目负责人的朋友学习下前端,拓宽技能边界。
2
星球的前端学习路线虽然很长,但却适用于所有学习前端的同学(无论出于什么目的)。
只不过对后端开发来说,这个路可以 “短” 一点儿。
只要学习如下知识就可以了:
标准三件套和 Vue,做到能看懂代码、通过复制粘贴 + 修改完成开发 Ajax 和 HTTP 协议,即前端与后端如何交互,有助于从全局的角度排查问题,划分前后端错误边界(不过后端本来就要重点去学 HTTP 协议) 了解打包工具,知道怎么构建部署前端项目
学后端的小伙伴们如果能把星球里的 伙伴匹配系统 做完,基本上前端水平就足够了,剩下的就是有空多练习。
当然,没有绝对的标准说一定要学到什么程度,感兴趣就多学点呗。但还是那句话,别搞错了自己发展的重点。
3
至于怎么学习前端,其实在我的前端学习路线里写的都很清楚了。
这里就推荐 2 个帮助大家零基础入门的资源:
B 站 Pink 老师前端入门视频(很详细,适合慢学) Freecodecamp 在线代码训练(很直接,适合速学)
上面提到的学习路线可以在本公众号回复【学习路线】获取:
欢迎学编程的朋友们加入我的 编程知识星球 ,我会像本文一样 1 对 1 解决你的问题,并且直播带大家开发完整项目(第三期项目进行中)。可以加微信 yupi5927,备注【加入星球】和自己的情况领取优惠加入星球,不备注不通过,非诚勿扰谢谢。
往期推荐