我的阅读方式
我拿到这本书挺久了,之前已经零散地看过一部分,最近一周集中地花了一些时间,将整本书看过了一遍。看得比较粗略,正如“好读书,不求甚解”(我甚至没有去看书中提到的那些参考资料)。
这本书比较强调要实践、”做中学“,但我是个人阅读,缺乏一个实践的环境,同时也还没具备开发软件的经验和能力,因此我阅读这本书的方式可能有些偏离它本身的理念了。
但这并不妨碍我通过简单的阅读,稍稍增加一些对于软件工程的感性认知。
相遇
和这本书的相遇是偶然的,因为它来自CSDN视频号的直播抽奖。书作者是邹欣老师,他在C站好像一直挺活跃的哈哈。
初感受
尝试着看过前面几页后,我感觉我有兴趣继续看下去,也许是它幽默风趣的语言风格吸引了我。学校也有软件工程对应的教材,但阅读起来就相对枯燥很多。
在读者反馈部分有一句话:读烂书浪费时间,读好书却节省时间。那么,《构建之法》这本书如何呢?
1
对于软件开发的阶段,书中举了个飞机的例子
这个例子莫名地就拨动了我的情绪,也许是那跨越时间的执着?我也不太知道。总之这个故事是《构建之法》早期吸引到我的一部分,这里写得比较草率,有兴趣可以自己看一下原书。
书中像这样一些故事或比喻挺多的,这虽然是一本关于软件工程的书,但阅读起来也不至于太过无聊。
2
看到这里,我有点像在照镜子。我感觉我经常因为陷入这样的状态而跟不上节奏,例如:
而这些不满足于现有问题的思考也许是弊大于利,它经常得不到什么有用的结果。
3
教育的三个区域
我们有时会强迫自己进入恐慌区,然而没有实力且心理准备也不够。比如想学习算法,听说《算法导论》很赞,就抱着这块砖头开始啃,多少人能一直啃下来?
这可能不只是一个坚持不坚持的问题,同时也是这件事情合不合适的问题。
书中的建议是:
4
这个观点值得仔细考虑。一个领域你不深入到一定的程度,就有很多乐趣都体会不到。
就像,旋转是乒乓球的一大精髓,一些尝试不久新手是不会旋球的,又如何能比较完整地体会到乒乓球的乐趣呢?
5
看到了“两人合作”那一章,两人合作、结对编程有那么多好处,以至于我有些心潮澎湃,忍不住想要大干一场,但貌似也没有什么合适的项目和伙伴,呜呜。
6
我试着用了一段时间,感觉不太喜欢,因为代码的行数会变得很多。程序代码很容易变得很长,给浏览带来了一些困难。
7
我赞同。曾多次被告诫不要使用 goto,因为它会破坏程序的结构。我想,这应该是对 goto 的不恰当使用导致的,goto 太灵活了。
使用 goto 构建函数的单一出口是一个不错的办法,给我程序的调试带来了一些方便(个人较少使用 debug 工具,习惯通过输出中间结果进行 debug)。
8
断言:看到了断言这个东西,也许我可以尝试这用起来
9
如何正确地给予反馈?反馈有三个层次:
应该有意识地选择比较合适的反馈层次。个人感觉比较常见的是过于深入核心的攻击,例如:
你
就
是
自
私
!
你就是自私!
你就是自私!
“自私”是一种固有的属性,被攻击一方已经无法回应。
具体情况具体分析,有时深入的反馈也是有必要的。
10
也许我可以尝试着改变自己的拖延症。
关于成果:告知已经抓出来 N 个腐败分子固然解气,但关键是“还有多少还在台上”。
强调短周期迭代:一些艰难的任务往往在短周期的迭代中得不到应有的重视
需要小心
11
12
沟通!
充分信任和授权:看到书中多次讲到这一点,忍不住有些向往这样的氛围。
13
需求分析
下面这个故事莫名有些拨动了我的情绪,于是我决定把它也记下来。

14
锻炼自己:参加多种社团并组织一些活动,最好是草根的活动,而不是由上而下规定的活动
15
软件设计和实现
之前就有人看我一篇算法博客说没看懂,不知道多加上一些图会不会好一些。
16
17
18
创新的八个迷思
19
创新的时机
20
创新和作坊
21
领导力
22
书中给任课老师和助教的建议
关于这篇笔记
这是一篇零散的阅读笔记,纪录的东西之间是孤立的,只是大体沿着《构建之法》的章节顺序,因此不是一篇对读者友好的笔记。我写下它,主要是个人进行一次回顾,回顾中也感受到一些前面读过的内容已经忘记了,当时的感受也变得模糊了,再翻一遍的时候会有种找回丢失的物品的惊喜感。
笔记中许多对于书本内容的引用做了一些删除,有些断章取义,建议还是可以自己阅读原书。
在笔记的前面部分,我相对较多地写了一些自己的感受或想法,而笔记后面部分则慢慢地变成了简单的摘抄。难道书籍后阶段的阅读就没有产生什么感受或想法吗?
当然不是。可能是有些累了就想着要偷懒了,后面对这篇笔记的态度更像是一个待完成的任务,而不是一次我渴望进行的总结和分享了。心里就想着:“快点叭,把这些东西搬运上去,活就干完了!”
这不是个好状态。
最后
这本书令人较多地感受到方法论层面的东西,我感觉自己读这本书不像是在学软件工程,至少不是我想象中的软件工程。但不管怎样,好像都没有关系,这里附上爱因斯坦的一段话:
我之前读过《计算机概论》([美]J.Glenn Brookshear Dennis Brylow 著),笔者感觉这是本不错的书,它有个特点是每章后面都会鼓励读者去思考相关的社会问题。
完
2022.10.20
