计算机专业CS课程学习 simviso版

《上海交通大学生存手册》

现实主义的大学 | 0xFFFF Wiki

大学教育的反思:为何许多学生在大学中迷失

关于课程学习的注意事项

课程进度不要一直被lab卡着,你在高中阶段学习的时候,老师并不会因为你作业没写完,而不往后推进了,这些公开课教授也是一样,每天留给lab 2-3小时足矣!

lab的完成,千万要记得独立进行,所要踩的坑,在未来都是财富!!!

关于站点群组权限:

注2023.12-2024.10之间暂不审核群组权限

你们申请群组权限后,记得群里说下,否则不给过的,也是为了提高大家群聊的参与度,另外,免费内容基本都会在b站上传,也无须刻意来申请该权限

simviso cs新手Q群:952436029

Simviso cs大群b站q群:564409973

simviso cs大群(需在站点注册):996160615

适合新人看的

C++之父的黄金建议:编程与人生哔哩哔哩bilibili

程序员进阶:四个必备好习惯哔哩哔哩bilibili

课程路线

本课程路线图为system方向,但15-213之前,包括15-213也是其他cs路线必学内容

高考完暑假:搞MIT6.100L 使用Python介绍计算机科学和编程,真的很适合中国学生

MIT6.100L学完后,可以看这在学习106x过程中,可以辅助参考,帮助理解:

面向过程到面向对象语言层面演化设计分享哔哩哔哩bilibili

c与c++入门之浅聊指针哔哩哔哩bilibili

CS106x前置知识:指针到引用想起的一些东西哔哩哔哩bilibili

就是这样轻松理解指针!哔哩哔哩bilibili

大一上:106× 106L 算法导论

大一下:csapp 网络 编译原理

大二上:15-445 15-418 深入探讨STL的设计与实现

大二下: CS162 6.046

大三: 准备校招或者保研

待完善,一些课程在未来翻译后会加入其中

你学了MIT6.100L,106x进行完前十集,就可以走起csapp了,学完106x,就可以走起MIT 6.006算法导论

MIT6.100L 使用Python介绍计算机科学和编程 课程翻译:

简介:这门课程旨在面向没有或几乎没有编程经验的学生。它旨在让学生了解计算在解决问题中的作用。此外,它还旨在帮助学生,无论他们的专业是什么,都能够理所当然地对自己编写简单程序的能力感到自信,并能够实现有用的目标。这门课使用Python 3编程语言。

https://www.simtoco.com/#/albums?id=1000064

https://space.bilibili.com/2494318/channel/collectiondetail?sid=2968049

在学习MIT6.100L的时候,如果你是大一的学生,以前没接触过代码,千万记得,刷课的过程中,停下来,先把练习独自做一下,然后再听教授讲解,如果你有仔细观察,MIT的学生也是亲自动手做了练习的,只不过,这个时间,视频给裁剪了,以下是群里小伙伴整理的本课程学习指南(十分感谢):

MIT6.100L食用指南

斯坦福 CS106× Programming Abstractions in C++ 课程翻译:

本路线前置:6.100L

Stanford 的进阶编程课,CS106X 在难度和深度上会比 CS106B 有所提高,但主体内容类似。主要通过 C++ 语言让学生在实际的编程作业里培养通过编程抽象解决实际问题的能力,同时也会涉及一些简单的数据结构和算法的知识,但总体来说没有一门专门的数据结构课那么系统。

https://www.simtoco.com/#/albums?id=1000059

https://zhuanlan.zhihu.com/p/659784628 针对学习cs106x的小伙伴,整理了一个课程文档,这个文档虽然比较粗糙,但对于你们搭cs106x作业环境是足够了

CS106x食用指南(持续更新)

QQ群(simtoco群 996160615)里也上传了106x的专属文件包

斯坦福 CS106L Standard C++ Programming 课程翻译:

本路线前置:CS106X

这门课会深入到很多标准 C++ 的特性和语法,让你编写出高质量的 C++ 代码。例如 auto binding, uniform initialization, lambda function, move semantics,RAII 等技巧都会在工作中反复用到,非常实用。

https://www.simtoco.com/#/albums?id=1000060

MIT 6.006 算法导论课程翻译:

本路线前置:6.100L CS106X

本课程介绍了计算问题的数学建模。它涵盖了用于解决这些问题的常见算法,算法范例和数据结构。该课程强调算法与编程之间的关系,并介绍针对这些问题的基本性能指标和分析技术

https://www.simtoco.com/#/albums?id=1000058

补充视频:

挑战智慧极限:P vs. NP—计算机科学中的神秘之谜哔哩哔哩bilibili

每个程序员需要掌握的三种算法类型哔哩哔哩bilibili

选择合适的数据结构:优化代码的一个关键哔哩哔哩bilibili

CMU 15-213:CSAPP计算机系统导论 课程翻译:

本路线前置:CS106X

CMU 大名鼎鼎的镇系神课,以其内容庞杂,Project 设计极好且有锻炼性而闻名遐迩。课程内容覆盖了汇编语言、体系结构、操作系统、编译链接、并行、网络等,作为系统入门课,兼具深度和广度

https://www.simtoco.com/#/albums?id=1000043

csapp可以先刷课,再看书,能极大降低学习难度,提高效率。本课程极为重要,务必刷2遍以上!

CMU 15-445/645 Intro to Database Systems 课程翻译:

本路线前置:CMU 15-213

作为db内核入门课,15-445 会自底向上地教你数据库系统的基本组成部分:存储、索引、查询,以及并发事务控制。 这门课的亮点在于 CMU db 专门为此课开发了一个教学用的关系型数据库bustub,并要求你对这个数据库的组成部分进行修改,实现上述部件的功能。此外 bustub 作为一个 C++ 编写的中小型项目涵盖了程序构建、代码规范、单元测试等众多要求,可以作为一个优秀的开源项目学习

https://www.simtoco.com/#/albums?id=1000013

15-445的学习方式,lab可以放在二刷的时候进行,通过lab去看对应的模块源码,理解其中的设计。

伯克利 CS162课程翻译:

本路线前置:CMU 15-213

这门课程旨在教授操作系统的设计及相关概念,内容包括操作系统的基本知识、系统编程、网络和分布式系统、存储系统等。具体来说,我们会学习如何管理多个程序(如进程、进程间通信和同步)、内存分配的方式(如分段和分页)、资源调度、文件系统的构建、基础网络知识(如socket、分层结构、API和可靠性)、事务处理以及安全和隐私保护等技术。这些内容将帮助学生理解现代计算机系统的核心原理和运作方式。

https://www.simtoco.com/#/albums?id=1000062

伯克利 CS162注意事项

在学本课程过程中,如果没学过c语言,可以刷一下CS50的c语言部分,参考本文档一开始的内容链接

cs162补充视频:

伯克利CS 162 lecture 6补充:线程的切换原理哔哩哔哩bilibili

[simvso译制]CPU 内部缓存的工作原理哔哩哔哩bilibili

缓存替换策略:当你的 CPU 缓存内存耗尽时会发生什么哔哩哔哩bilibili

CPU 缓存写入策略解析哔哩哔哩bilibili

现代 CPU 缓存层次结构的剖析哔哩哔哩bilibili

CMU 15-418/15-618: 并行计算机架构与编程 课程翻译:

本路线前置:CMU 15-213

简介:从智能手机到多核 CPU 和 GPU,再到世界上最大的超级计算机,并行处理在现代计算中无处不在。 本课程的目标是深入理解设计现代并行计算系统所涉及的基本原理和工程权衡,并教授有效利用这些机器所必需的并行编程技术。 因为编写好的并行程序需要了解关键的机器性能特征,所以本课程将涵盖硬件设计以及它如何影响软件设计。

https://www.simtoco.com/#/albums?id=1000056

MIT 6.824 分布式系统 课程翻译:

本路线前置:CMU 15-213

本课程的学习可与CS162 CMU15-445同时进行

这门课每节课都会精读一篇分布式系统领域的经典论文,并由此传授分布式系统设计与实现的重要原则和关键技术。同时其课程 Project 也是以其难度之大而闻名遐迩,4 个编程作业循序渐进带你实现一个基于 Raft 共识算法的 KV-store 框架,让你在痛苦的 debug 中体会并行与分布式带来的随机性和复杂性。

https://www.simtoco.com/#/albums?id=1000019

6.824的学习方式,2020版的raft看完后,可以直接看2021追加课翻译,再开始做lab,课程二刷的时候,必须让自己细细读一遍paper,锻炼自己读英文paper的能力,这些都是可以写入简历的。

simviso针对2021课时追加翻译

offer相关

强调,无论是校招还是社招,简历是你面试沟通的第一环,是你的先手操作,能否把握主动权,全在你的简历上,通过简历将你的能力有所展现的,吸引并将整体面试节奏控制在手中,通过一些核心信息,来提高自己的薪资层级,市场上的offer数量其实不少,就看你想不想拿了!祝大家都能拿到一份不错的offer!加油!

关于激活码

激活方式:网站右上角,头像 -> 个人中心 -> 激活码兑换 ->确认兑换 -> 查看我的课程

激活的时候,第一次点击是查询操作,第二次确认操作才是激活