Skip to content

Instantly share code, notes, and snippets.

@Alan-Liang
Last active December 29, 2021 08:00
Show Gist options
  • Save Alan-Liang/7675c20ff18ad62a3345e08c781e1220 to your computer and use it in GitHub Desktop.
Save Alan-Liang/7675c20ff18ad62a3345e08c781e1220 to your computer and use it in GitHub Desktop.

程设课的目的

作业要有目的性; 班级的培养目标是什么? 什么是「计算机科学家」? 实际上, 抑或是「工程师」?

目的直接决定了课程设置的方向和思路。

大的课程思路

自顶向下? 自底向上? 实验入手? whatever?

要不要提前说一些系统/计导的内容? 要理解 C++ 必须先理解系统 (比较) 底层的实现。

要不要介绍软工的内容? 严格来说软工和计科是两个方向, 但是学计科写不好代码也是不太行的。

对于一些 C++ 魔法 (namespace, operator overloading (especially [] and ()), copy/move ctor, compilation units, etc.) 应该如何介绍? 何时介绍? 在介绍它们之前, 应该如何先把程序跑起来?

小作业与上机课

  • 自己造测试数据和 TDD
  • 重构练习: 从学期初开始做一个大作业, 学期末重构
  • 题目: 实现 std::function
  • 题目: 实现 weak map
  • 题目: 练习 git (比如给一个 reset 过的 git repo, 要求利用 reflog 之类的)

大作业安排

  • ICPC 是否保留?
    • 修改 ICPC 文档
  • int2048 是否保留?

杂项

  • 摸底考试?
  • 与伟大思想联动?

Stroustrup 写的东西

人员安排

分班

  • 分不分 A/B 班?
  • 分不分 A/B/C 班?
  • 助教对应 A/B 班/对应到人?

出题与验题

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment