0

0

大学学习计划之计算机

PHPz

PHPz

发布时间:2024-02-01 17:54:02

|

616人浏览过

|

来源于Linux就该这么学

转载

大学学习计划之计算机

1 前言

最近有不少还在读书的同学来问我大学期间到底应该学什么,学了Java,看了JS, HTML,CSS, 尝试了一下SSH以后似乎就迷茫了, 这其中还有不少是计算机系的同学。

毫无疑问,为了毕业后找个好工作,在大学期间应该学一些应用层的技能,掌握一门应用广泛的语言及其框架。最好做过实际的项目,有过实习的经验, 这些都是简历中能看得到的加分项,是脱颖而出的重要砝码。

但是这些东西都是一颗大树的枝叶和花朵, 在大学期间更应该学习的是看不见的根,也就是基础知识, 对于科班出身的人更是如此。

原因很简单,基础知识虽然可以在工作以后再补,但是再也找不到这么多大块的时间,这么安静的环境,让你心无旁骛的钻研了。

你不用考虑着第二天怎么去应对客户的脸色,也不用去想着怎么去给领导解释昨晚的严重Bug不是我们的问题, 你只需要单纯的学习就好,看到有这么多同学把美好的时光都花在打游戏上,实在是令我扼腕叹息,要是把这些时间给我就好了!

我现在只能利用一些碎片时间补一下基础的知识,如果时光倒流,让我再坐到图书馆中去静静地看书该多好!

同学甲说: 基础,又是基础,老刘你说了多少遍了!我耳朵都听出茧子来了!

抱歉,基础就是这么很重要,我还是要像祥林嫂一样继续啰嗦。

我认为大学期间应该搞定的基础知识应该包括(不限于)这些:

2 C语言

大学期间不要忙着去学Java , Python等高级语言, 你应该先去搞定C语言(不是C++啊),因为这门语言太贴近机器了, 能帮助你理解计算机的运行原理,不信你看看《深入理解计算机系统》, 通篇都是C语言,它怎么不用Java,Python去描述啊? 因为他们太高级了,太抽象了,描述不了底层啊。

学会C语言,才能给其他基础知识打下基础,因为大部分基础软件、系统软件都是C语言写的,你看不懂C程序那怎么行?

不要像我当年一样,看到别人已经能做网页了,自己还在命令行的小黑窗口中折腾,头脑一热就把C语言给扔了,后来又花了很多时间来弥补。

要记住你学会了C这门贴近硬件的,简单而又复杂的语言以后,再去学别的语言,几乎不费吹灰之力, 他们都太简单了!

3 理解计算机的组成原理

如果你是科班的,老老实实地把《计算机组成原理》和《数字电路》这两门课学了,把那些实验内容(如门电路,半加器,全加器,触发器等)兢兢业业地做好。

你应该定个目标: 自己折腾一个简单的CPU,简单的就是进行数值运算,复杂一点儿的可以实现指令, 如果觉得教材实在枯燥,可以结合《编码》或者《穿越计算机的迷雾》 来学习, 如果实在喜欢玩游戏,可以到《我的世界》游戏中去制造CPU啊,已经有大牛这么做了。

4 理解操作系系统原理

操作系统太重要了, 对操作系统的理解决定了你以后工作中能达到的深度,这里边藏着太多极为重要的概念, 例如进程,线程的概念,锁、调度,IO模型,虚拟存储等等 , 他们会在你以后做高性能,高并发系统这一块儿起到重要作用。

即使你先学会了Java , SSH/SSM, 随着你能力的提升,最后你还是得走入这些基础知识的世界。为什么不在大学期间把他们都搞定呢?

有人可能觉得OS太枯燥了,实在是看不下去,其实OS是一门动手实践课, 你可以去看看早期Linux 内核的源码(要求C语言啊),书籍文章多如牛毛; 也可以自己动手自制简单的操作系统,视频书籍也不少,就看你愿不愿意把玩游戏的时间花在上面了。

举个例子:哈工大的VOID同学就在本科期间从零开始做了一个类似于Linux 0.11的操作系统出来,他拿到了阿里的Special Offer , 目前在阿里就职。 他录制的《从零开始编写操作系统》视频可以在B站看到: https://www.bilibili.com/video/av12169693/

Roboflow
Roboflow

一个为计算机视觉和机器学习提供工具和服务的平台

下载

同学乙要问了: “人家是大牛,还有一个好学校,我一个三本的渣渣怎么可能做得出来? 你这不是给我设置了一个不可能完成的任务吗?”

确实是这样,天才永远只有少数,不可能每个人都成为天才,也不可能每个人都做出天才的成果。

但是我们也要在天才铺好的道路上坚持往前走走, 也许有一天就会发现,哦,我已经超越了这么多人了啊!

要坚持使用Linux而不是Windows,立志在后端做开发的更是要如此, 别像我大学时安装个双系统,结果整天宠幸Windows , 从来不翻Linux的牌子。

5 网络, 数据库, 编译原理

把这三者合到一起, 是我个人觉得他们的重要性没有前面的高。

对于网络,需要理解网络分层模型,可靠性传输原理,TCP/IP协议,Socket编程,和操作系统结合起来可以考虑写一个Web服务器。

数据库的话首先理解SQL、关系模型、事务、索引, 要想深入学习的话可以看看查询是怎么实现的,事务是怎么实现的, 如果确实感兴趣一定要看看sqlite的源码。

学编译最好的方式就是自制一个编程语言了, 搞出来以后会对编程语言有个极为透彻的理解。

6 数据结构和算法

这个重要性就不用再强调了,经常看码农翻身的可能都要烦了,可以看看之前的文章《学习数据结构有什么用?》

学习的过程中除了看书理解各种算法和数据结构外,更重要的就是做题、做题、做题!

同学丙说: “老刘,你说的不都是计算机的专业课吗?”

是的,就是计算机的专业课,一般来说,工作个几年以后你才会体会到他们的珍贵,更会痛惜大学时为什么不好好学,就像我现在这样。

不要局限于学校发的教材,现在网上的视频资源异常丰富,世界级大学的课程我们也可以看到,千万不要浪费。

同学丁说:老刘你别瞎BB了,你让我学Java,做项目,现在又让我造CPU,写操作系统,数据库,服务器...... 我都没时间和女朋友约会了。

恭喜你,已经有女朋友了,超越了大部分同学了,在大学谈一场恋爱,享受一下青春也是非常重要的事情。

但是我想说的是,你不可能把所有的都学会,你能做的就是集中火力突击一个方向,那就是你最感兴趣的方向。 只有那些经得住寂寞,耐得住诱惑的才最有可能成功,如果再和自己的兴趣结合起来,那简直肯定成功。

总而言之,计算机的基础知识让你和别人区分开来,让你有着比别人更快的加速度。

但是老刘瞎BB这么多估计也没太大用处,因为你不行动我也没有办法。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
C语言变量命名
C语言变量命名

c语言变量名规则是:1、变量名以英文字母开头;2、变量名中的字母是区分大小写的;3、变量名不能是关键字;4、变量名中不能包含空格、标点符号和类型说明符。php中文网还提供c语言变量的相关下载、相关课程等内容,供大家免费下载使用。

410

2023.06.20

c语言入门自学零基础
c语言入门自学零基础

C语言是当代人学习及生活中的必备基础知识,应用十分广泛,本专题为大家c语言入门自学零基础的相关文章,以及相关课程,感兴趣的朋友千万不要错过了。

637

2023.07.25

c语言运算符的优先级顺序
c语言运算符的优先级顺序

c语言运算符的优先级顺序是括号运算符 > 一元运算符 > 算术运算符 > 移位运算符 > 关系运算符 > 位运算符 > 逻辑运算符 > 赋值运算符 > 逗号运算符。本专题为大家提供c语言运算符相关的各种文章、以及下载和课程。

362

2023.08.02

c语言数据结构
c语言数据结构

数据结构是指将数据按照一定的方式组织和存储的方法。它是计算机科学中的重要概念,用来描述和解决实际问题中的数据组织和处理问题。数据结构可以分为线性结构和非线性结构。线性结构包括数组、链表、堆栈和队列等,而非线性结构包括树和图等。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

263

2023.08.09

c语言random函数用法
c语言random函数用法

c语言random函数用法:1、random.random,随机生成(0,1)之间的浮点数;2、random.randint,随机生成在范围之内的整数,两个参数分别表示上限和下限;3、random.randrange,在指定范围内,按指定基数递增的集合中获得一个随机数;4、random.choice,从序列中随机抽选一个数;5、random.shuffle,随机排序。

629

2023.09.05

c语言const用法
c语言const用法

const是关键字,可以用于声明常量、函数参数中的const修饰符、const修饰函数返回值、const修饰指针。详细介绍:1、声明常量,const关键字可用于声明常量,常量的值在程序运行期间不可修改,常量可以是基本数据类型,如整数、浮点数、字符等,也可是自定义的数据类型;2、函数参数中的const修饰符,const关键字可用于函数的参数中,表示该参数在函数内部不可修改等等。

562

2023.09.20

c语言get函数的用法
c语言get函数的用法

get函数是一个用于从输入流中获取字符的函数。可以从键盘、文件或其他输入设备中读取字符,并将其存储在指定的变量中。本文介绍了get函数的用法以及一些相关的注意事项。希望这篇文章能够帮助你更好地理解和使用get函数 。

669

2023.09.20

c数组初始化的方法
c数组初始化的方法

c语言数组初始化的方法有直接赋值法、不完全初始化法、省略数组长度法和二维数组初始化法。详细介绍:1、直接赋值法,这种方法可以直接将数组的值进行初始化;2、不完全初始化法,。这种方法可以在一定程度上节省内存空间;3、省略数组长度法,这种方法可以让编译器自动计算数组的长度;4、二维数组初始化法等等。

618

2023.09.22

C# ASP.NET Core微服务架构与API网关实践
C# ASP.NET Core微服务架构与API网关实践

本专题围绕 C# 在现代后端架构中的微服务实践展开,系统讲解基于 ASP.NET Core 构建可扩展服务体系的核心方法。内容涵盖服务拆分策略、RESTful API 设计、服务间通信、API 网关统一入口管理以及服务治理机制。通过真实项目案例,帮助开发者掌握构建高可用微服务系统的关键技术,提高系统的可扩展性与维护效率。

3

2026.03.11

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL 教程
PostgreSQL 教程

共48课时 | 10.5万人学习

Git 教程
Git 教程

共21课时 | 4.1万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号