Heim > Artikel > Backend-Entwicklung > Web开发学习之路是否有尽头
在Web开发的道路上,每当心力交瘁深感学海无涯时,我就会安慰自己:坚持,总有一天我会打通任督二脉(前端+后端)
事实上,这不是一篇我的心得,而仅仅是把我自己的这个问题摆出来,希望通过文字帮助梳理下。
写和想有很大的不同,写出来后自己先读一遍,就好像新的想法跟自己对话,想法碰撞出新的思路,修改重新写,确实是一个帮助”深层次“思考、思考到底的好方法。
下面的文字都是删改N次后留下的最终的想法,相信后期回头来看时还会有不同的见解。
自从踏入互联网开发的道路(since 2013.3), 浩瀚,日新月异的开源技术让我这个有着学习计划强迫症的小白经常陷入这样的梦靥:计划多,实施少,学不完..
今天早上看了开源中国上的一篇博文 你是否应该成为一名全栈工程师?
其中作者给了这样的建议:
如果想要向着全栈工程师的方向迈进,你应该掌握很多知识与技能,并且熟悉上面提到的各种组件。
此外,还要提升自己的个人沟通技能,这样才能管理并与 前端与后端开发者实现较好的协作。
好消息是未来对于每一类Web开发者来说都是光明的,无论是前端、后端,还是全栈。
要坚持学习一切有价值的东西;掌握新的框架、语言与平台;并且与开发者同事及最终用户保持高效的沟通。
在这种情况下,无论世界发生什么变化,你都会始终立于不败之地。
OK, 学不完的互联网技术是毋庸置疑的了,那我应该怎么做?
程序员圈里经常讨论的”全栈工程师“,在我看来,首先要有个前提条件,”为什么“要做全栈?
(个人)纯粹为了学习实践互联网[最流行的新技术],那这个”全栈工程师“真的很难,要付出很大的时间和精力才跟得上这”潮流“, 基础技能List:
(个人)为了实现某个项目(假设只是个网站),那很容易,根据项目类型和你自己的技能情况确定架构,定”一个栈“即可
注意,上面列出的都是”基础技能“List,要是商业化的大型项目,清单长度和技能深度都要翻个番;当然,大型项目中,每个工程师每天做的工作其实都只是项目中的一块业务,比如支付,那他还要去研究各个支付渠道的api
因此,要搞清楚自己目前的工作状况、项目状况、业务状况,给自己在团队/项目中定好位。
OK,我目前的定位是…
如果定不出来,每天的学习列表都完不成,那就理所当然了因为你的目标是凌乱的,一会想实现自己的某个想法,一会想着公司的某块业务,一会想着朋友让帮忙做的网站..
技能定位,能在很大程度上砍掉学习清单上的一部分(我认为是小于50%的)
比如定位了前端,就不要去过多深究Nginx,PHP..
反之定位了后端,就不要去深究AngulaJS,Backbone..
定位全栈…
全栈工程师的流行,在我的认知里,主要有以下几方面促进因素:
前后端的分家,很大程度上我认为是因为“前端”分了出去,并在当今用户体验至上的环境中占着跟”后端”同等重要的地位。但另一方面,随着日新月异的技术发展,随着运维复杂度的提升,服务与框架都拥有自身的特性, 一个人很难掌握所有的技能。有几年经验的前端,或者后端,从某一方面讲,都可以自称“全栈”,但从更严格的方面,很少有人能真正做到”与时俱进“的”全栈“
还记得最开始带我入门的一个后端开发跟我说过:样式/特效都没必要研究,别人一个wget就都拿到了,专心搞后端吧。
那是13年初,前端应该还没有特别火,不像现在各种招聘H5,H5,H5…所以,可以理解,当时后端会鄙视前端。但是现在,你还敢吗?
前端工程师无论在就业难度还是薪资方面,都压了后端一点点。。
说道鄙视“前端”,还有一种“伪前端“现象:在前端工程师人才缺口大的情况下,许多美工UI/刚毕业参加了培训班的,直接应聘做了”前端“; 不懂linux,不懂node,不懂sass的前端,说实话在二线城市如武汉,真的一抓一大把。
扯了这么多,如果还是要定位”全栈“(专指下面这一种),那就要做好每天增加3个小时学习时间的准备吧。。。
OK,我目前的定位是:别折腾,做一个安安静静的美后端吧..
这几年的教训,我想也是宝贵的,在今后更是要坚定不移的遵循:
学习的任何语言/框架/库,都要有一个”project”为载体;
无论是因为想要GET这个技能而想出的一个Project,还是因为有一个IDEA而去学习支撑Project的各种技能,都是OK的。
欢迎光临笔者的新博客:www.ganiks.me
好久没写自己的想法,写这区区几百字居然花了我3个小时。其中多次想要写武汉光谷的互联网发展以及程序员是否应该做外包这样的话题,下次吧。