Note:本页面的食用方式如下:
1. 课程模块主要由
教材(电子书/网页文档)
、幻灯片
、课程主页(网址)
、csdiy课程信息页
、课程录播视频
五个要素组成,由于不同课程的差异以及资源碎片化的特性,上述五个要素一般不会同时出现,当然,也有可能你可以在一个汇总性的要素中找到其他的要素。各个要素会按照我个人认为的权重进行排序。例如,在 CS61A 中,精读课程的部分内容对我来说是合理的,那么我便将课程主页
、csdiy课程信息页
这类汇总性较强的要素排在前面;而对于 CS106L 而言,仅仅需要阅读课程教材及幻灯片就能很大程度上掌握课程的主要内容,以及当下我只希望快速通读一下这个课程的主要内容,那么我就将教材
与幻灯片
置前。2. 进阶理论:大部分进阶理论不是处于技术闭源的状态就是只能通过原始学术论文了解,该模块的内容除去部分科普性的资料,大部分是晦涩难懂的。但可以肯定的是,所有的进阶理论都有它们对应的基础依赖。
# 课程 / 基础理论
# 学习社区 / 学习资源集群
# csdiy(CS 自学指南)
北大学长基于自己的自学历程打造的教科书级别的自学指南,在 github 上有超 60k 的 star。项目中云集了全球各个顶尖大学的计算机开源课程,及其附属资料。不过由于课程更迭,有些课程的附属资料会出现缺失的情况,但评论区里总会有大佬为课程内容做资源备份,所以在搜集课程资料时,搭配评论区食用更佳。
中文版网址:CS 自学指南
英文版网址:csdiy
github 仓库:cs-self-learning | PKUFlyingPig
# w3school
国外一个专为程序员打造的技术栈学习平台,内容分为
HTML & CSS
、Data Analytics
、JavaScript
、Web Building
、Backend
五大模块,主要讲解各个技术栈使用的编程语言的基础语法或技术框架基础。各教程采用文档型的方法将各技术栈的特性逐个列出,并加以简化描述。形式上类似于国内的菜鸟教程,但前者在内容上更加精简,适合用于在毫无基础的情况下速通技术栈的常用基础特性。
- 网址:w3school
# tutorials point
形式上与菜鸟教程、w3school 没有区别,但涵盖的技术种类比前两者都要丰富,甚至还有数学模块。与 w3school 一样为境外资源。
# 编程入门
# MIT-missing-semester: The Missing Semester of Your CS Education
课程简述:课程主要传授在大学课堂上几乎不会涉及但对于 cs 学习无比重要的工具或零散知识点。例如 shell、Git(版本控制)等
课程中文网址 / 教程:计算机教育中缺失的一课
csdiy 课程信息页:MIT-Missing-Semester | csdiy
pass
# CS61A: Structure and Interpretation of Computer Programs
课程简述:伯克利 CS61 系列的第一门课程,使用 python 作为课程的编程语言。强调抽象,让学生掌握用程序来解决实际问题,而不关注底层的硬件细节。oop(面向对象编程)入门利器。
课程官方网址:CS61A | UC Berkeley
往期课程页面备份:Fall 2024 | hqhq1025
课程教材:Composing Programs
课程教材中译:COMPOSING PROGRAMS
csdiy 课程信息页:CS61A: Structure and Interpretation of Computer Programs | csdiy
half pass 【py-oop】pass 【Functional Programming】【SQL】
# C++ Tutorial - w3school
课程简述:这个就没什么好说的了,就是单纯的文档型教程,与国内的菜鸟教程类似,但在重点讲解上显然要精简得多。对 C 的各种特性毫无概念时可以参考这个教程,可以在短时间内建立起对 C 的初步了解,随后即可通过 CS106L 深入了解 C++ 的各种特性及其运用。
pass# CS106L: Standard C++ Programming
课程简述:这门课会深入到很多标准 C++ 的特性和语法,让你编写出高质量的 C++ 代码。例如 auto binding, uniform initialization, lambda function, move semantics,RAII 等技巧。这门课并不难,但是信息量很大,需要在之后的开发实践中反复巩固,因此正好适合正在钻研 C++ 工程的我。
官方教材:CS106L-Textbook
课程资料备份 1(幻灯片等):Winter 2024 | JiNanPiWang
课程资料备份 2:Winter 2025 | Gkbinqi
csdiy 课程信息页:CS106L: Standard C++ Programming | csdiy
课程官方网址:CS106L: Standard C++ Programming | Stanford University
pass
# 进阶理论
# 工程理论
# GPU 工作原理
模块简述:GPU 是现代计算机上一个重要的处理模块,主要用于诸如图形学计算、深度学习等对并行计算性能要求较高的计算领域。需要注意的是,GPU 与人们口中常说的显卡是两个概念,前者是一个处理芯片,后者是一个完整、独立的计算机部件。
基础依赖:计算机体系结构、计算机组成原理
相关文章 1:计算机组成原理 ——GPU 图像处理器 | 云物互联
相关视频 1:内存与显存的区别 | Redknot - 乔红
Note:该视频内容主要介绍了 GPU 数据传输技术、显存(GDDR:Graphics Doule Data Rate SDRAM,图形双倍数据速率同步动态随机存取储存器)技术与传统内存(DDR:Doule Data Rate SDRAM,双倍数据速率同步动态随机存取储存器)技术的区别