打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
要是早知道这些,也不至于迷茫四年!

学习软件工程专业的学弟学妹们,过年回家经常遭遇七大姑八大姨的连环盘问:“软件工程是修电脑的吗?我家主机坏了你能帮我们修一下吗?”,每到此时同学们都会对自己所学的专业,产生深深的怀疑,同学们不禁困惑:“跟着学校的课程学是不是就能找到工作?不知道什么是重点?学习路线怎么安排?

01

学长学姐吐血建议

1、不要把希望全部寄托在学校的课程,即使是科班的同学,也是要通过自学才能找一份好的工作,定要早点培养自学的能力,和搜索资料的能力,因为出来工作了,遇到新的技术需要掌握,这时候就没有人教你的了,全靠自己在网上搜索 自学来完成任务。

2、在校一定要学好计算机基础,这个尤为重要,因为校招过程中,公司都爱考察这些问题,而且计算机基础一定要在大学期间掌握了,等到工作来补,首先是时间的问题,第二计算机基础是比较枯燥的,工作之后可能就没什么心思放这了,计算机基础越早学好,对自己的收益越大!

3、可以去牛客网搜索下你未来想从事岗位的面试真题,然后你就可以发现,现在公司喜欢问什么知识,比如很多公司会问计算机网络、操作系统、数据结构与算法、数据库这些知识,然后你可以根据这些信息一门一门课的学下去。

02

计算机基础是什么

计算机基础主要包括主要包括下面这些:编程语言数据结构与算法、操作系统、计算机网络、计算机组成、数据库。这些课程并不是要求你大一学完啦,而是伴随你整个大学四年的。

大一先掌握一门编程语言,然后学习数据结构,就可以了。大二你就可以开始学习算法,算法越早学越好。然后学习计算机网络、操作系统、计算机组成,这些计算机基础知识。大三学习数据库,做项目,刷leetcode,备战校招。


在这里为软件工程专业的新同学们推荐一些经典教材,希望可以帮助大家更好地掌握专业知识。

教材推荐

编程语言(c/c ):《c语言程序设计》、《c primer》

数据结构与算法:《大话数据结构》、《算法图解》、《数据结构与算法之美》 、《剑指offer》

操作系统:《操作系统导论》、《现代操作系统》

计算机网络:《图解HTTP》、《图解TCP/IP》、《网络是怎么连接的》 、《计算机网络自顶向下》、《TCP/IP协议详解卷1》

计算机组成:《程序是怎么跑来的》、《计算机组成原理:软件/接口与设计》、《深入理解计算机系统》

数据库:《SQL必知必会》、《从根儿上理解mysql》、《mysql技术内幕》、《高性能mysql》

编译原理:《程序员的自我修养》

03

我该怎么学这些专业课?

数据结构与算法

算法:动态规划、回溯算法、查找算法、搜索算法、贪心算法、分治算法、位运算、双指针、排序、模拟、数学……

数据结构:数组、栈、队列、字符串、链表、树、图、堆、哈希表、……

强烈推荐浙江大学的数据结构与算法课程,该课程非常系统,也很经典,适合小白入门算法,老师的讲解也是深入浅出。

计算机组成原理

极力推荐B站的《计算机科学速成课》,这个课程是国外录制的,内容是真的好,视频的动画很精美,讲课的时候不会很死板,反正就是不看后悔、相见很晚系列。

B站搜索:《计算机科学速成课》获取课程

对于入门计算机组成,可以先看前10个视频,看完这10个视频也就不到2个小时,看完前10个视频对计算机的工作方式就有一个基本的了解了。看完前10个视频就可以开始看书了,《计算机是怎么样跑起来》和《程序是怎么跑起来的》。这两本不用1个月就能看完,因为在看这两本书的时候,你会看得很顺畅,相比学习的心态,你更多的是会带着「好奇心」的心态去读。

计算机网络

计算机网络相比操作系统好学非常多,因为计算机网络不抽象,你要想知道网络中的细节,你都可以通过抓包来分析,而且不管是手机、个人电脑和服务器,它们所使用的计算网络协议是一致的。也就是说,计算机网络不会因为设备的不同而不同,大家都遵循这一套「规则」来相互通信,这套规则就是 TCP/IP 网络模型。

入门 HTTP:最好书籍就是《图解HTTP》了,作者真的做到完完全全的「图解」,书籍不厚,相信优秀的你,几天就可以看完了。

 TCP/IP 网络模型:《图解 TCP/IP》,这本书也是以大量的图文来介绍了 TCP/IP 网络模式的每一层,但是这个书籍的顺序不是从「应用层 —> 物理层」,而是从「物理层 -> 应用层」顺序开始讲的,这样一上来就把最枯燥的部分讲了,很容易就被劝退了,所以期末君建议先跳过前面几个章节,先看网络层和传输层的章节,然后再回头看前面的这几个章节。

操作系统

对于没学过操作系统的小白,期末君建议学的时候,不要直接闷头看书。你不用几分钟就会打退堂鼓,然后就把厚厚的书拿去垫显示器了,从此再无后续,毕竟直接看书太枯燥了,当然不如用来垫显示器玩游戏来着香。

B站关于操作系统课程资源很多,比较好的入门级课程是《操作系统 - 清华大学》,该课程由清华大学老师向勇和陈渝授课。课程授课的顺序,就如期末君前面推荐的学习顺序:「内存管理 -> 进程管理 -> 文件系统管理 -> 输入输出设备管理」。

B站搜索:《操作系统 - 清华大学》获取课程

数据库

数据库是后端程序员必须掌握的一个技术栈了,数据库分为关系型数据库和非关系型数据库,常见的就是MySQL。

MySQL 入门的话是了解 SQL 语法,进阶的话是深入底层实现原理。MySQL 入门推荐《SQL必知必会》,这一本很薄的书,主要是讲数据库增删查改的 SQL 语法。

学完SQL法,我们不能止步于此,要深入去了解 MySQL 底层知识。这里建议先看《MySQL 是怎么运行的》,这本书含有很多图,是小白学习 MySQL 底层知识的最佳书籍。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
作为计算机专业学生,最应该学习的课程前五位是什么?
学妹:大学四年以算法为重还是技术为重?
靠着这10本书,我考研上了北大
计算机专业如何系统自学? | 编程指北
深入理解mysql索引底层数据结构与算法
学习经验:C 软件开发学习路线(附书单推荐)
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服