程序人生丨程序员积累的编程知识,十年后还有多少有用?

Posted 一起学编程

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了程序人生丨程序员积累的编程知识,十年后还有多少有用?相关的知识,希望对你有一定的参考价值。

​作为一个大龄后端开发,看到这个问题,真是挺感慨的。

在不少人的眼中,可能十年,甚至五年以后,自己的辛苦积累的编程知识就没用了。

其实并不是这样,我们要把后端的需要掌握的技术分为三个层次来看。

计算机基础

主要是操作系统、数据库、数据结构和算法、计算机组成原理、计算机网络 、编译原理,这些知识几十年都没有变化,再过十年也不会变。

基础稳如泰山,对它们进行投资永不亏本。

中间层和应用层

这两层随着时代的变迁在剧烈地重构。

但是一个人积累的知识10年后还剩下多少, 要看一个人入行的时间处于技术发展的哪个阶段。

技术的发展也不是颠覆性的,而是渐进性的,它不会一下子消失,只会边缘化。

小李在90年代中后期入行,他之前花大精力学习了VB、PB、Delphi这些开发C/S应用的软件,准备大显身手,可是那个时候正是桌面时代向互联网迁移的关键点,十年之后他就会发现桌面C/S应用被边缘化了。

小张在互联网早期的时候入行,他陆陆续续接触到了ASP,JSP,EJB,Websphere, Weblogic,Struts、jQuery、SOA、Ruby on Rails,这些技术十年,甚至二十年之后还在用,只不过只能在遗留系统来维护了。

小刘在移动互联网火爆的时候入行,他一上来接触的可能就是nginx、 Redis、ElasticSearch 、Kafka、Docker、k8s之类的技术,十年之后,只要没有大到足以干掉移动互联网的技术变革,这些技术应该还会在。

技术消失的原因

技术的消失和边缘化主要有两个原因:

1.不好用

EJB笨重繁琐,被轻量级的Spring替代。

ASP,JSP写网页,很容易把逻辑和显示混到一起,把代码搞得一团糟,最后被前后端分离的技术替代。

Struts配置繁琐,被SpringMVC,SpringBoot彻底淘汰

2. 不够用

互联网和移动互联网的爆发式发展,对于高并发,大流量,大数据产生了强烈的需求:

例如为了解决C10k,C100k问题,出现了epoll(2002)和nginx(2004)这样的大杀器。

为了解决数据库读写缓慢,出现了Redis(2009)、ElasticSearch(2010)。

为了解决数据库单机性能不足的问题,出现了主从分离,数据复制......

为了单体应用维护成本高、无法灵活扩展,部署周期长的问题,出现了微服务(2012),服务发现,熔断,负载均衡,注册中心等相关技术。

为了解决分布式环境下高吞吐的消息订阅,出现了Kafka(2011)。

为了解决环境不一致,应用部署的问题,出现了docker(2013), k8s(2014)。

......

程序员所在的残酷环境

理论上来说,很多技术的本质并没有变化,变化的只是形式。

无论是ASP、JSP、Struts、EAD4J、SpringMVC,RoR......都是Web编程,要解决的本质问题都是URL和代码的映射,数据的验证、转换和绑定,Web安全....

无论是Hibernate、MyBatis、ActiveRecord,都属于ORM的范畴。

Spring Cloud那些服务注册和发现,很明显有着SOA时代的痕迹。

只要把原理搞定了,就像黑客帝国中的Neo看透Matrix一样,可以在技术领域任意驰骋。

现在最大问题在于,互联网发展太快,编程技术层出不穷,学不过来。

由于技术太多,每一项技术都需要花费大量的精力去学习,想要精通所有知识几乎不可能。

有基础的老程序员会学得更快,他们能迅速掌握、理解其中的技术原理,但是在技术的细节,最佳实践层面,老程序员和新程序员不容易拉开差距。

对于兼顾管理的技术人来说,更不可能深入这些技术的细枝末节,能在理解原理后在关键点上和团队成员进行讨论就不错了。

如果公司主要浮在应用层搞业务的定制开发,就不需要去研究底层的操作系统、数据库、编译、计算机网络、分布式系统,也就不需要深厚的技术沉淀, 大家都是CRUD Boy,调包侠,面向Google/Stackoverlfow/百度编程......

那老程序员积累下来的经验就没什么用,相对新程序员的性价比就不高。

可惜,这样的公司在国内是大多数,互联网行业烈火烹油之时大家都好,一旦形势变化,裁员就会落到薪水更高的老程序员身上。

在中国软件业,不是技术在淘汰人,是人在淘汰人。​

所以,卷确实是目前不可避免的趋势!

-----------------------------------

想学习更多知识内容可以关注博主的哔哩哔哩账号:

C语言编程__Plus的个人空间_哔哩哔哩_BilibiliC语言编程__Plus,素材源码来C/C++粉丝群:875887616;公众号:C语言编程学习基地;C语言编程__Plus的主页、动态、视频、专栏、频道、收藏、订阅等。哔哩哔哩Bilibili,你感兴趣的视频都在B站。https://space.bilibili.com/525280593

以上是关于程序人生丨程序员积累的编程知识,十年后还有多少有用?的主要内容,如果未能解决你的问题,请参考以下文章

白龙码,蹄朝西二旗!感受一下比出bug还掉头发的通勤丨程序员的烦恼!

粉丝福利,今晚十点开奖,送3本函数式编程相关的前端书!

编程书籍丨C语言程序员必读的 5 本书

Win32编程知识积累

写给十年后的自己

数字货币强势来袭,十年后现金不复存在?