程序员到底学什么

最近一直在思考程序员到底学什么?难道我们就一直陷在无穷无尽的业务里做增删改查?还是跟别人比多掌握了些开源框架或中间件的使用?还是比别人会更多新的技术或者开发工具?

在别人追求学习更多新的技术,牛逼的中间件,我却更愿意花时间扎实自己基础,了解技术的本质,因为我个人认为新出的技术本质没有多大变化,只会封装的越来越深。

分享一下我个人认为应该学的:

1.算法,数据结构

计算机离不开数学,只有数学的支持才是可靠的

2.抽象能力

怎么从0和1发展到现在的互联网,关键就是的抽象

3.优美的编码

傻瓜都能学出计算机能运行的代码,只能聪明的人会写让人能理解和阅读的代码

5.计算机的思维方式

运用计算机的思维方式描述现实中的问题

6.扎实的基础,融会贯通

操作系统,网络,虚拟机,数据库,中间件。。。

7.透彻的了解技术的本质

不要停留在怎么运用技术,要掌握里面的算法和抽象

8.系统分解,架构的能力

对系统需求把控,分解,构架的能力

9.学会高效沟通,团队协作

学会高效的沟通,注重团队协作