课程相关资源
课程主页: CS61B-sp21
gradescope配置教程:教程
精译课程视频:视频
(本来在b站听的,但我英语不咋地,b站机翻又比较抽象,有的地方很难弄懂,还好找到了精译)
个人进度
两个多月前在网上刷到著名作业gitlet,有点想做但点开发现根本无从下手,于是干脆选择完整过一遍。听下来感觉josh课讲得是真好,通俗易懂,不愧是伯克利神课。
课程笔记:lyorz’s notion
课程作业:lyorz’s github
目前进度:课程听完前八周,一直到lec 22;作业方面已完成著名proj2:gitlet的基本功能实现。
coding能力:完全没学过java,略懂python和C++,能用来刷leetcode的水平。学这门课感觉编程语言方面不存在障碍,语法部分课程介绍的内容加上搜索引擎已经够用,毕竟课程重点不在java语法而在数据结构。
gitlet感想:
style倒扣分扣的是真狠啊;- 我本身没有独立完成过什么大的项目,本科经历过的课程项目顶多是为框架填写一些方法,所以gitlet算起来还是我第一个独立完成的项目,整体做下来还是很有成就感;
- gitlet项目文档中要求编写技术文档,这确实是一个很好的行为,结合技术文档和合理的注释应当能够使代码编写更加美观流畅。
但我本人在执行过程中没有及时更新技术文档,写代码往往想一出是一出。导致自己编写的很多小的辅助函数忘记复用,整体代码有些混乱冗余,说到底还是缺乏项目经验; - 项目过程中完全认识到边写边测试的重要性,否则遇到意料之外的输出时很难判断究竟是其中的那一步没有正常工作;
- gitlet确实是一个值得一做的项目,不管是理解git原理还是数据结构,完成gitlet都将有很大的帮助。