小白程序员想走后端方向,该怎么学习计算机基础知识?需要做什么?

本文探讨了后端程序员为何需要掌握计算机基础知识,包括计算机组成原理、操作系统、计算机网络、数据库和数据结构等方面。通过理解这些基础知识,开发者能更好地解决性能问题和进行性能优化。对于初学者,建议优先学习工作中可能用到的知识,并逐步提升自己的编程思维和问题解决能力。
摘要由CSDN通过智能技术生成

计算机基础知识对于程序员来说非常重要,重要程度高,想成为高级程序员,必须有好的计算机基础,可是为什么需要基础呢?

把这个问题弄明白,要学哪些基础知识就清楚多了。

第一个问题,10个用户使用的系统和1000000个人使用的系统,对后端来说差别大吗?

这是很多初学者弄不清楚的事情。对前端而已,差别不会特别大,对后端来说,天壤之别。

不说架构,只说服务器的资源,后端代码是运行在服务器上,服务器和pc一样,同样是要有cpu,内存,硬盘,带宽的,当系统的使用量比较多的时候,就会出现性能瓶颈。

内存不足,cpu跑满100%,磁盘不足等等问题,这在很多时候都交给运维去检测和处理,开发人员需要懂吗?

不同的解决方案,带来的资源使用率不一样。

所以后端人员必须做性能优化,很多事情,专业和非专业的区别,就在于能不能把事情做好。

 

从这个问题来看,你发现后端需要什么基础知识没?

计算机组成原理,来告诉你计算机的物理机构,数据如何存储。

计算机操作系统来告诉你怎么管理内存,什么叫进程 ,什么叫线程,什么又是io。

计算机网络告诉你什么是tcp和http,什么是报文。

这些课程和基础知识的作用就是给你更好的认知自己编写程序都底层实现原理,为你解决性能问题提供基础支撑。

如果你在学习C/C++的过程中遇到了问题,可以来加入小编的企鹅圈问小编哦~小编很热情的(●’◡’●)

第二个问题,数据库要建索引,btree和hash两种索引,区别是什么?各自应该用在什么场景。

如果你没有数据结构的基础,对btree唯一的认知应该就是逼数吧?

hash是什么鬼,hash算法?算什么鬼玩意。

 

对这两个概念都不清楚的话,能不能做好索引的创建?当然能,操作很简单,可是创建出来的索引能不能解决问题,让访问速度更快?

也很简单,两个索引随便试呗,这个不行用那个。

这就是没文化时候的解决方案,而正确的学习方式就是花时间理解什么是btree,什么是hash,底层如何实现的,再结合业务场景,去判断应该做什么样的索引。

 

正常而言,学到组成原理就够了。

但是,这么一个庞大的知识体系,你要学多久?

而且,真正用到的基础知识和工作场景紧密相连,可能只有20%用得到,你只是不清楚是哪20%而已。

结论如下:

1 计算机组成原理,计算机操作系统,计算机网络,数据库,数据结构,算法 这是六门基础课要学习

2 你没时间系统的学习一遍,只能去找工作中很大可能用到的,先过一遍,有基础概念,以后遇到问题的时候,可以知道归属哪个领域。

3 对于没有用户量的系统而言,没有太多学习基础课程的必要,因为你不需要解决这些问题。但薪水和你能解决的问题是等价的,你愿意一直只做初级程序员么?

4 编程思维在基础课程里都有锻炼,在工作中也更重要。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值