NoughtQ's Space!

Back

前言#

本学期的学分是大学两年以来最少的,仅二十分出头一些(因为从 23 级开始培养方案改了,本来在这学期要修计组和 ADS,现在都往前挪了一个学期,缓解了不少压力,但也因此导致这个学期的课过少)。虽然学分不多,但事情似乎不减反增——开学初还想着每周抽出时间自学,结果没过几周就被其他事情占去了大多数精力和时间,即便有零零碎碎的自由时间,我也不再有自学的动力了(悲)。

话好像说偏了,让我们回归正题。和上学期一样,我几乎一门课都没好好听过,全靠自学,并且能翘的课全都被我翘掉了doge。在自学课内课程的过程中,我也参考了一些国外的优质课程作为补充,并深深感受到国内外 CS 课程质量的天壤之别。同时我也留下了一些笔记——得益于最近 LLM 的突飞猛进,我会时不时用 LLM 为我解释知识点、翻译英文教材以及润色笔记(感觉我写的东西更有人机感),提升了不少效率。

下面来正式分享本学期修过的一些课程及学习心得。

以下是我学习过程中留下的资料,欢迎大家来逛逛。如果觉得这些资料对你有帮助的话,不妨到 Github 仓库上给个⭐,万分感谢🙏

  • 笔记(专业课的笔记齐全!)
  • 博客(收录了这篇经验帖,阅读体验更佳)
  • 课程资料库(下面课程中的大多数我认为有价值的学习资料都放在里面了,后面我就不会提及这个资料库了)

目录#

专业基础课#

面向对象程序设计#

  • 学分:2.5
  • 任课老师:翁恺
  • 教材
    • 教务网订购的教材 wk 貌似提都没提(?),而且我敢肯定没人会去看,所以强烈建议不要订购
    • wk 的 PPT 是基于 Thinking in C++, Ver.2 修改的
  • 分数构成
    • 课堂表现(5%)
      • 从第三周起几乎每节课都有课前小测,在 xzzd 上有数道选择题,巩固上周知识;大概上课前半小时开放,ddl 为上课时间
      • 此外 wk 课堂上会用 xzzd 随机抽人回答问题,如果抽到了但人不在就要 -1 平时分
    • 作业(16%):14 次 PTA 上的作业(wk 班独享,不过难度不大)
    • 8 Lab/Project(24%):其实还是 6 个 Lab + 2 个 Project,总体难度也不是很大,不过和其他教学班内容不同
    • 期中(5%):90min,在实验课进行,不过本学期是线上考试
    • 期末(50%)

虽然近几年 wk 的风评貌似不太好,但是他的 OOP 水平还是在线的——除了介绍课程组要求的 C++98 标准下的知识点,他也会扩展一些新标准的东西,比如移动语义、右值引用之类的。但很可惜,经过2年大学生活的洗礼,我发现自己不管老师讲的好不好都听不太进去,所以实际上 wk 讲的大多数内容我都没在听,但也有2个例外:wk 讲小故事(奇怪的知识增加了;好像他每年都会讲)以及随机摇人的时候。

关于平时分,wk 班可能是最麻烦的,比其他班多了小测和每周的作业,但难度都不大,占不了多少时间;最麻烦的应该是期中考试(和之前一样也涉及到课上还没讲的东西,比如经典的 static_cast),但今年改在线上举行了,大家到点了自己做就行了,所以这次期中考试大家的分数格外地好看doge。我的建议是:如果你喜欢认真听课且对 C++ 很感兴趣,那么 wk 也许是个不错的选择;但如果你的时间很宝贵的话,还是不推荐选他的课,毕竟其他老师的事会少很多。另外,今年还是有补分集(6 道 trivial 难度的编程题),可以抵掉一次零分的作业/lab/project/期中考试,请好好利用。

我自学遇到的第一个障碍是 wk 的 PPT:虽然是用 markdown 写的,看着很美观,但是如果没有听过他的课的话,就会觉得其内容过于稀碎,逻辑过于跳跃,总之完全不适合对着自学。我的解决方案是:将 PPT 喂给 LLM,让它为我解释其中的知识点并以笔记形式呈现,之后我就在其基础上进行修改。第二个障碍是资源太多,我在有限的时间内该参考哪些资料。我做出的选择是:先看了 Stanford CS106L Winter 2025 的课程并完成了作业,了解了不少新标准下(甚至到了 C++23 标准)的知识,比如 concept、变长模板等等;然后看了 Effective C++,虽然仅涉及 C++98 标准,但里面包含了不少 best practice,使我受益颇多。这么搞下来后,我的 C++ 笔记就显得有些杂乱,反正我个人是不太满意的,但除非我的工作和 C++ 相关,我应该不会去修改现有的笔记了。

最后就是期末考试了。98上也有不少资源,但不幸的是 23-24 历年卷再往前就是 19-20 的,中间有不小的 gap。我复习的时候还是先看了自己的笔记;之后又拜读了 Jerryhzy 大佬的笔记,基本上包含了 wk 老师讲的所有东西,写得也很清楚;接下来还看了 PTA 上的作业题以及几套历年卷。这么一趟复习下来就基本上没多大问题了。考试题型还是和以往一样( 不过今年期末考出了点小小的监考事故,导致考试结束时间延后 5 min ),虽然题目不难,但还是丢了很多分数( 注意:由于考后没有开放权限,所以题目和分数都看不到,但分数可通过开发者工具查看(doge)(不过 Arc 浏览器貌似不行,我用的是 Chrome) )。不过算下来平时分是拿满的,所以给分是挺不错的。

小彩蛋:我一直到补分集 ddl 那天(复习 OOP 错题)才发现第 2 个 project 拿了个大零蛋,下载文件后发现里面是空的,可能是当时没有按照要求提交源文件导致的。看到 0 分的那一刻把我吓了一大跳,差点打乱了复习的节奏,但好在补分集题目相当简单(不过做的时候我一直在想后面是不是会有很难的题目,结果虚惊一场)

相关资源

专业必修课#

数据库系统#

  • 学分:4.0
  • 任课老师:陈岭
  • 教材Database System Concepts, 7th Edition
  • 分数构成
    • 课程作业 + 课堂测试(20%):
      • 每次课后都会布置几道教材上的习题
      • 实际上并没有课堂测试,甚至都没有签到(乐),所以后来我都没去上过课
    • Lab(30%):
      • 除了 lab1 外都要写实验报告
      • lab1 只是配环境,lab2-4 是一些简单的 SQL 小实验(还用着上古时期的实验文档)
      • DB 的“三座大山”的其中两座便是图书管理系统和 MiniSQL,难度不小,不过都配有完整的实验文档以及代码框架,体验上还是比较舒适的;并且内容上和理论知识密切相关,因此做下来收获不少
    • 期末考试(50%):第三座大山;允许带一张手写 A4 纸(课题组统一)

虽然我从来没好好听过 cl 老师的课,但从身边人的反应看,他也许就是个 PPTeacher,上课颇有些催眠。但 cl 班的最大好处是没有 quiz 且不要求签到,所以每周多了整整3节的自修时间!

平时最重要的就是图书管理系统和 MiniSQL。

  • 前者需要独立完成,用 MySQL + JDBC 实现。我们仅需完成部分模块(函数)即可。bonus 是实现一个 Web 应用,前端用 Vue3,后端用 Java。个人推荐用 IDEA 编写 Java 程序,不仅配环境方便,而且它的自动补全真的很强,可以省去不少 dirty work。即便没学过 Java 也没有关系,个人认为但凡学过 C/C++ 的同学都能在短时间内掌握 Java 最基本的语法知识,而这些知识在本实验中足够用了;况且现在 LLM 这么好用,不懂就问 LLM。至于 Vue3,建议至少有一些 HTML/CSS/JS 三件套的基础后再学,不然就有些吃力。

  • 后者在夏学期开始,可以 1-3 人组队完成,要求用 C++ 实现一个简单的 SQL 引擎。正如不少前辈所说,这个实验对我们 OOP 的学习很有帮助,比起 OOP 那几个实验质量高太多了。但“质量高”也意味着难度不小,需要我们花费不少时间和心思来打磨,因此强烈建议:

    • 尽可能找到靠谱的队友,实在找不到宁可自己单干(前提是自己不能太菜)
    • 尽早开始做,不要影响到期末复习(我们组实际完成时间比原先安排晚了一个多星期,但好在没影响到期末复习)

    最痛苦的地方不是写完代码,而是之后不断的调试。就我自己而言,我常常会为一个 bug 花费几小时的时间,结果只需稍稍改动一个地方就能解决,或者问题出在其他同学负责的模块中。我曾尝试让 LLM 帮我找 bug,但并不总是有效,有时反而会误导我。所以建议大家还是潜心培养自己的 debug 能力,这对我们今后的 CS 学习也相当重要。

    个人感觉 bonus 的难度没有特别大,如果有时间的话建议各位还是争取一下。

如果前面的实验以及 bonus 都认真做了的话,平时分给的还是很高的。所以我还是推荐各位选 cl 老师的。

由于数据库系统包含的知识点太多太多了(可参考我十几万字的笔记),所以也建议各位尽早复习。然后光看知识点不做题是没多大效果的,所以要多刷些题查漏补缺,同时找到适合自己的答题技巧。除了去年没有留下完整的回忆卷,往年的历年卷都值得参考。然而今年期末考试又改革了——虽然看着有九道大题,但每个大题里面包含的都是客观题(选择/判断/填空)(所以不需要画 E-R 图了),这点需要注意。但我的期末炸完了 + 高达 50% 的占比,所以总评分数相当难看(悲)。

相关资源

计算机体系结构#

  • 学分:3.5
  • 任课老师:何水兵
  • 教材Computer Architecture, A Quantitative Approach, 6th Edition
  • 分数构成
    • 作业(20%):共 4 次
    • 实验(40%):共 6 个,实验内容具体可见图灵班学习指南
    • 期末(40%)

从分数构成中可以看出,平时没有签到和小测,所以可放心翘课(像我就来了两节课)。大概每章学完后会布置教材中的几道作业题,但题目质量令人堪忧,而且不少题目又臭又长,但有小概率会出现在期末考试上(不过这次考试好像没有)。所以不建议在作业上花费过多心思。

从数逻,到计组,再到体系结构,个人认为实验难度是逐渐下降的——体系实验的代码框架都给出来了,只需要填空就行了,而且不少空可仿照已有代码直接无脑填出来,所以 workload 很小。但 hsb 班麻烦的一点在于要求我们自己绘制原理图,不得直接 copy PPT 给出的原理图(反正 PPT 也是一坨,不抄也罢)。我的话比较喜欢用 excalidraw,手绘风看着很舒服。另外,实验允许2位同学组队,也可以单人完成。如果能组到靠谱的队友,那么 workload 还会小很多。

最沟槽的应该是这个期末考试——因为老师们的 PPT 没有统一,而且也没有一个统一的考点大纲,所以复(yu)习(xi)时就不得不参照多位老师的 PPT。我的笔记先是完全基于课本的,后来根据 jxh 和 cr 的 PPT(是时候需要发动你的人脉了)补充或修改了一些内容,基本上能覆盖整个考试范围。除了复习知识点外,刷历年卷也是必不可少的一环,因为题型上和作业题会有很大不同,需要提前适应。值得注意的是,今年考试题型又发生变化了:30 分客观(15 道选择)+ 70 分主观(5 道大题,每章 1 道)。听说今年的卷子是 cr 老师出的,而且主观题是用来捞人的(从 lz 的分数看好像确实如此,一堆不确定的,给分竟然是这些课程中最高的)。

相关资源

专业选修课#

数值分析#

  • 学分:2.5
  • 任课老师:黄劲
  • 教材Numerical Analysis, 7th Edition(实际上已经出到第 10 版了)
  • 分数构成:没有明确的规定,具体见图灵班学习指南 hj 老师部分(其实就是我写的

正如其他前辈评价,hj 老师上课很有激情,讲课的时候会在台上台下走来走去,有时候甚至边讲课边绕着教室走一圈,偶尔还会找同学回答问题(但不用担心答不出来),由此可见其水平吊打那些 PPTeacher。hj 老师的另一个特点就是思维比较活跃,以至于有些跳跃,比如评价同学们做的 Research Topic 的时候会扯到其他领域的问题上。像我这样思维比较迟钝的人就很难跟上老师的上课节奏,所以听了没几节课后我就放弃了,把它当成了自修课了hh。

教材上的作业不要求提交,需要各位凭自觉做。要是没有做过的话,往近了说没法应付小测,往远了说就要期末火葬场了ww。

虽然没有签到,但是每周的课会随机掉落 0-3 道小测题,题目不难,主要用于巩固前几节课学过的知识(换句话说,当天讲的内容不会小测)。好像据 hj 老师说,实在做不出来也没关系,只要能体现思路就能给分。

另外每周也会随机掉落 0-2 个 Research Topic(要求2人组队),就是一些围绕课程主题,但课上没有深挖的内容,需要在下周课的开头分享自己对算法的理解,代码实现及其结果的分析。大家记得尽早去抢,不要拖到期末影响复习。

PTA 上的 8 道实验题(C 语言函数题)在开学时一起开放,截止时间大概在 16 周结束的时候。所以时间上比较宽松,但也不要堆到最后几周做,因为题目难度不小,每道题可能需要花费不少时间和心思。hj 老师对实验查重很严,在期末的时候会给我们展示查重率(有不少题目查重率为 100%,这种属于每个字符几乎都是一模一样的,多少有些离谱了),并提供弥补提交通道,可以覆盖之前做过的或没做过的题目,但只有原来 70% 的分数了。(作为一名吃瓜群众,其实挺好奇有多少了被抓了,但最后没有公布

期末考试题型和难度没有发生太大的变化,主要是加了判断题。做的时候我发现题目越往后越简单(前面的题目属实有些搞人心态了,当然也许是我太菜了),但感觉这个参考价值不大。只有一个人提前交卷离开了,可见考试难度之大。建议买卡西欧计算器(能解矩阵、方程的那种),对考试有一定帮助。我的客观题有 1/3 是蒙的(真的一点不会(悲)),所以我不对这门课的分数抱有很大期望,但结果给分还挺高的,感觉被 hj 老师捞了。

相关资源

通识课#

毛泽东思想和中国特色社会主义理论体系概论#

  • 学分:3.0
  • 任课老师:陈晓伟
  • 教材:《毛泽东思想和中国特色社会主义理论体系概论》2023 版
  • 分数构成
    • 平时(60%)
      • 经典阅读展示(24%)
      • 主题实践展示(24%)
      • 随堂讨论(12%)(cxw 老师会提前一周公布讨论主题,每周都会有一些小组选取某个主题进行展示,每组展示时间控制在 5 min 内)
    • 期末(40%)(闭卷考试)

下面再说清楚平时分的规则:开学初会分组,每组 12-14 人,之后就以组为单位完成平时分中列出的任务。个人认为我们组的分工安排相当合理,合作地也相当顺利(主要是没有人摆烂),最后拿的分也挺高的,故在这里简单分享一下:对于两次展示,我们内部划分为两个小组,一组负责经典阅读,另一组负责主题实践;另外,因为每组要参与 3 次随堂讨论,所以整个大组又重新分为 3 个小组。这样的话每个人仅需参与一次随堂讨论 + 一次展示即可,所以 workload 就不是很大。

cxw 老师特别好的一点是他会提前一周在钉钉群里说下节课要签到,所以可以大胆翘课辣!。另外给分也相当慷慨,所以我强推选 cxw 老师的毛概课。

期末考是闭卷,所以记忆负担会比较重。我的话直到考前2天才开始正式复习:先是根据 98 的笔记过了一遍课本;然后再看 cxw 老师的复习课,跟着划了重点;接下来就开始死记硬背了(所以会经常遇到背了这忘了那的情况(悲))。最后稍微看了一两套历年卷,做到心中有数。今年考试题型和难度和往年没有什么变化(选择题还是一如既往地刁钻啊)。最后出分极好(创下思政课分数新高),并且绝大多数人都在 dd 群里表示感谢。

相关资源

托福阅读#

  • 学分:1.5
  • 任课老师:杨建平
  • 教材:无(王玉梅托福词汇算吗
  • 分数构成
    • 平时(40%)
      • 小测 & 听写(20%)
        • 每周都有,强度还是不小的
        • 小测有2类题型:10道词汇选择(范围为王玉梅托福词汇 5 个 word list) + 若干道阅读理解题(基本上是某一类相同题型),小测之后就是听写(10个,范围同词汇选择),总时长大致在 25 min 左右(加上随后的讲解正好1节课)
      • 课堂参与 & 小组讨论报告(20%)
        • 课程期中的时候会举行一场横跨3节课的讨论课:先是老师带领大家阅读1篇学术文章(近似一篇论文),之后2节课就是以小组为单位,就这篇文章的话题展开辩论。辩论需要录音,同时课后还要按照要求记录辩论内容,当晚提交到 dd 群里。
    • 期末(60%):4 篇完整的托福阅读(每篇 10 道题)+ 词汇选择(20 道,这次的范围是 word list 21-30)

98 上搜了一圈,看到的大都是 ffm 老师的托福阅读,只看到一两篇介绍 yjp 老师的。但个人感觉 yjp 老师这边事情更少些,比如布置的课后作业无需提交(当然如果不做的话不利于培养做题的熟练度),而且也不用提交什么课后笔记之类的(所以这门课我没有留下一点笔记)。可能最痛苦的还是要保持3节课的专注,因为老师会随时叫人回答问题,答不出来还是很尴尬的。讨论课虽然有些难度,但水分不小,可以混出高分来(比如用 AI 想观点,写稿子)。

期末考的难度和一般的托福考试差不多或更低些,时间上一定是够的,差不多一个半小时就能做好。我的话考前就看了那 10 个 word list,也不去刻意刷题,因为个人认为多刷点题也不会在短期内提升我的水平。实际上这门课也不会对你原有的英语水平有多大提升,最大的作用可能还是让我们熟悉托福阅读的各种题型,心里有个数。如果连大英四都觉得有些吃力的话,建议不选;本来英语底子就好,而且需要外语学分的话那就放心选吧(从给分上看 yjp 老师不见得比 ffm 老师差)。我的话由于高中英语不算差,然后又经历了一年半 CS 专业课全英文教材阅读的磨练,所以选这门课还是有一点点底气的,最后给分略微高于预期,感觉挺不错的。

托福写作#

  • 学分:1.5
  • 任课老师:史占泓
  • 教材:无
  • 分数构成
    • 平时(60%)
      • 到课率 + 课堂表现(10%):老师不会刻意点名,但不允许上课玩手机,否则可能会扣分
      • 小测(30%):共3次小测,第1次是1篇综合写作,第2次是2篇学术讨论,第3次是1篇综合写作+1篇学术讨论
      • 课后作业(20%):自己选10篇托福阅读题做(5篇综合写作 + 5篇学术讨论),ddl在第7周周末
    • 期末(40%):1篇综合写作 + 2篇学术讨论,纸质考试,时间 1h

课上主要介绍托福写作的2大题型——综合写作和学术讨论的规则以及写作技巧,对于备考托福的同学而言还是有一定帮助的。同样地,也不要指望选这门课对你的英语水平提升有所帮助。从小测成绩上看,那些水平高的同学分数会一直很高,像我这种动不动就出现语法错误的人在平时分上就相当吃亏了(不过写多了的话语法错误会犯的越来越少,但我又懒得动笔hh)。由于本人写作水平堪忧,上课也一直在划水,所以就不多介绍了。

由于标准的托福写作考试是机考,且平时练习也是用电脑打字的,所以期末的纸质考可能需要提前准备适应一下。虽然在考前觉得纸上写可能会慢一些,但实际做下来速度上也差不多,关键还是思考的速度。最后的给分一般般,不会特地去捞(群里仅一人说了谢谢老师)。

禅宗历史与中华文化#

  • 学分:3.0
  • 任课老师:冯国栋
  • 教材:无
  • 分数构成:(具体占比忘了)
    • 平时
      • 理论课好像没有签到过(不过我每节课都来,生怕突然签到
      • 读书报告:会给参考书目,先自己手写(字数上有限制,具体忘了,目的是不让同学卷字数),然后让 AI 写一篇(和手写主题相同)
      • 讨论课
        • 3次展示(15% * 3)
        • 3次会读(10% + 2 * 5%)
        • 1次辩论(15%)
        • 考勤(20%)
    • 期末

在我选课的时候,这门课在 98 和查老师上好像没什么讨论度(不过现在有不少讨论,貌似有不少前来还怨的)。出于想要在 zjg 的最后一学期学完通识课的想法(其他2门通识课都掉了),我就稀里糊涂地选了。理论课挺水的,老师就在上面讲课,也不会让同学回答问题,所以大可将其作为自修课。

可以看到,麻烦的是这个讨论课——整个大班分为3个小班,每个小班的讨论课由一名助教负责。其中会读是围绕某本著作发表自己的见解和想法,每个人都要回答,所以对我这种不想在通识课上投入精力又很社恐的人而言很不友好。展示和辩论都是以小组为单位进行的,除去会读和辩论外每周都有 2/4 组的展示,每周展示主题不同,但和理论课主题强相关。辩论的话每个组只要派一人参加即可,显然我不会参加,所以不多作评论。

教务网上没有给出期末考试的时间地点,因为最后一堂课就是期末考试——开卷考,2节课的时间。本学期就2道简答题,一道是:“结合一两个例子谈谈你对‘色即是空,空即是色’的理解”(400字左右),另一道是:“简述禅宗的历史发展”(600字左右)。不清楚给分是怎么给的,但自知平时表现不好(明显感到助教 jj 对我很无语),所以给分自然不咋地。总之,如果有更好的选择,不建议选这门课。

定向越野#

  • 学分:1.0
  • 任课老师:高泽(虽然教务网上显示的仍然是金熙佳老师,可能是退休了?)
  • 教材:有的,但我忘了叫什么,应该也叫《定向越野》吧
  • 分数构成:不多说,所有体育课都一样

其实上学期我上的也是 gz 老师的定向越野。2个学期的课基本没什么差别,对我来说唯一的差别是我这次翘掉了第一次的期末考。其实翘一次问题不是很大,相比上一次期末分多扣了3分(当然再翘1次肯定不行了)。其实期末考给分还算慷慨的,而且平时也可以划水,所以如果其他体育课没选上的话,不妨选 gz 老师的定向越野。个人建议如果起得来的话,建议选早八的课,其他时间的话路上车多,在校园跑图的体验就不太好了。

后记#

又一篇流水账的诞生!明明经历了 16 周的课,但感觉写出来的东西还是干巴巴的,大概是因为我几乎没有好好听过一节课,缺少自己一些细腻的感受导致的。不过这次吸取了前面的教训,考完后就立马起稿,一些重要的地方没有遗忘掉。

终于把除了习概外的通识课全上完了,下学期开始就可以专心学专业课了!

下期预告:之后还会补一篇有关短学期的经验贴。

如果这篇帖子对你有所帮助的话,那是再好不过的了~

大二春夏 课程回忆录
https://astro-pure.js.org/blog/exp-d2cx
Author NoughtQ
Published at 2025年7月4日
Comment seems to stuck. Try to refresh?✨