24 秋冬 程序设计辅学 ¶
Danger
本文档正在审核。
欢迎来到 24 秋冬程设辅学课程页面!本学期计划开课 6 次,内容如下:
节次 | 时间 | 授课学长 | 课程标题 |
---|---|---|---|
一 | 秋七周 | 混合 2301 倪晟翔 | 编程入门 |
二 | 冬二周 | 混合 2205 朱宝林 | 通往 Pro 的第一步 命令行交互、VSCode、AI 工具 |
三 | 冬四周 | 图灵 2302 黄哲 | 开源世界生存基础 SSH 密钥、ZJUGit、Git、许可证 |
四 | 冬五周 | 图灵 2201 李英琦 | 如何写出简洁工整的报告 Markdown、LaTeX |
五 | 冬六周 | 图灵 2302 杨书华 | 期末复习(上) |
六 | 冬七周 | 混合 2301 司浩言 | 期末复习(下) |
- 第一节课:面向初次接触编程的小白,通过习题讲解锻炼编程思维。
- 中间三节课:面向准备选择计算机专业的同学,帮助你们补全计算机专业必备的实用技能。校内没有课程会讲授这些内容,但如果你不具备这些技能,之后的专业课程、科研会变得较为困难,到那时都假定你已经掌握了这些技能。这几节课以实验为主。
- 后两次课:面向修读《程序设计与算法基础》课程的所有同学,帮助你们备考期末考试。这几节课可能以知识归纳梳理和习题讲解为主。
关于课程难度,我们会严格控制在大一新生刚接触计算机时的水平。去年我们设定的难度有点高,效果不是很好(有兴趣的同学可以在左侧导航栏浏览去年的内容
课程动机与目标 ¶
Hi,CSer!欢迎你来到计算机专业的世界。但这条路刚开始的一段可能并不好走:
大一入学时我是一个对计算机一无所知的小白,装了几十个 G 的 Visual Studio 天天和 OJ 你死我活。凭着高中的数学底子我数学课学得还不错,但在专业课上对竞赛大佬只有仰望。提到编程我只会打开那笨重的 IDE,新建一个我也不知道具体是干啥的命令行项目,然后就是 cin, cout, for 循环,然后 CE, RE, WA 循环。当时的我就处在一种拼命想学好但不知道怎么学,课上认真听讲但题还不会做,课后做作业完全是用时间和它硬耗的痛苦状态。我至今电脑里还存着自己大一上学期计算概论大作业的源代码 —— 一个 1200 行的 C++ 文件,没有头文件、没有类、没有封装、没有 unit test、没有 Makefile、没有 Git,唯一的优点是它确实能跑,缺点是“能跑”的补集。我一度怀疑我是不是不适合学计算机,因为童年对于极客的所有想象,已经被我第一个学期的体验彻底粉碎了。
上面这段话来自 CS 自学指南 的作者,我想也是很多同学的真实写照。这段话真实地揭示了国内计算机本科教育的一个普遍问题:缺乏工具和技能的培养。这一情况正在好转,越来越多国内外学校开始重视这方面的教育,开设了相关课程:
学校 | 课程 |
---|---|
MIT(麻省理工学院) | Missing Semester |
清华大学 | 全部课程采用文档 + 开源代码框架 工具和技能的培养已经融入课程体系 |
中国科学技术大学 | Linux 101 |
南京大学 | ICS-PA2024 |
但很可惜,浙江大学计算机学院的课改还没有走到这一步,你可以看到部分《程序设计与算法基础》的老师还在使用 20 年前的 PPT。所以我们希朝着这个方向努力,对齐其他学校的课程,帮助同学们尽早掌握这些技能,让你们在专业课上少走弯路。
去年我们开设了两套课程,但显然对大一新生来说内容过多且难了。本学期的目标是普及,让大一新生有一个适应的过程,所以课程内容会极为简单。我们计划在 25spring 开设深入的课程,到时候会有更多深入的内容。
感兴趣的同学可以进一步阅读:谈谈如何让自己看上去、闻上去都像一个 CS 人 - CC98。