前言
虽然说“技多不压身”,“术业有专攻”,但是作为程序员,尤其是做业务场景的开发者来说,并不是会的面越广越好,而且现在的技术迭代速度太快,不管是前端领域还是后端领域,技术栈或者技术框架更新迭代的周期越来越短、越来越快,学习成本越来越大,尤其是要做资深的全栈工程师,需要学的知识是非常的多,而且还需要各个方面的时间沉淀,考虑到人的精力会随着年龄的增长而递减,成反比例,所以虽然全栈工程师有着丰富的工作从业经验和经历,但是如果想要具备各个方面都差不多,难度是很大的。
正题
所以作为程序员,在考虑自己未来是横向发展还是纵向发展的问题上,要结合自己实际情况来选择,因为有部分人就是适合做全栈工程师,夸张点讲就是天生做全栈的料,所以这一类开发者做全栈工程师是非常合适的,但是有些开发者想要精通某一领域,或者编程思想不太灵敏的开发者可以选择精通某一领域的开发即可,毕竟“条条大路通罗马”,没必要走一样的路,最重要的是结合自身实际情况来定。
还有就是现在的互联网技术发展非常迅猛,尤其是新技术的诞生和发展的速度越来越快,留给开发者的学习时间越来越短,而且技术要求也越来越高、越来越复杂,甚至一些新的技术打破了传统编程思想,这些都需要开发者花大力气去学习和使用,对领域从业者的要求也是水涨船高,这都是不确定的因素。
所以相对于一般开发者群体来讲,就是抓住前期开发的几年时间,精通某一领域,在该领域里深耕,然后成为领域资深开发者即可,没必要非要人人去做全栈工程师,毕竟全栈领域的需求没有单个领域的需求大,还是做领域开发者比较好,而且投入和学习成本也不算高。
最后
最后就是结合自己的能力范围,以及所从事工作的公司性质,还有就是个人的规划和想法,三方面结合来做出抉择,因为人的精力是相当有限,尤其是现在的快节奏生活节奏,如果想要在职支撑大量的学习任务是需要很大的精神毅力和勇气的,也不是说做全栈开发不好,而是想要成为全栈开发太难,个人觉得术业有专攻比较切合目前的大部分实际情况。以上就是个人关于本期话题讨论的观点,如有不妥之处,还请各位看官谅解,谢谢!