《程序员修炼之道:从小工到专家》第五章读书笔记
今天我读了《程序员修炼之道:从小工到专家》第五章,第五章的标题是“弯曲,或折断”。
生活不会停滞不前,代码也是这样,如今,任何事物都在不断变化,我们编写的代码也是,我们要尽一切可能将我们的代码编的尽可能宽松,否则日后的修理将会非常困难。
首先是“解耦与得墨忒耳法则”,我们编码时,如果是整体一起编码,小型的程序或许还能应付得来,但是当我们的程序变大,很多时候将代码组织成最小的组织模块才能更容易去维护,而且尽量减少模块之间的交互,那样在日后的维护中如果必须替换掉某个模块,其他的模块还能继续工作。有很多不必要的依赖关系的系统非常难以维护,为了依赖关系保持最好,我们可以使用得墨忒耳法则设计我们的方法和函数。使用它能减少我们调用类中的响应集的规模,以这种方式设计的类的错误也往往更少。使用得墨忒耳法则会使你的代码适应性更好,但是这说明你将编写大量的包装方法,对于其他来说,空间使用的更多。
之后是“元程序设计”,细节会弄乱我们整洁的代码,当我们不得不去改动代码时,都有破坏系统或是引入新bug的可能。元数据是关于数据的数据,你的程序无时不刻都在使用元数据,将元数据配置和驱动可以使程序更灵活,有更高的适应性,从应用外定制元数据,绕过正在运行的产品。
再就是“时间耦合”,时间是软件架构一个常常被忽略的方面,这个时间有两个对我们比较重要:事情并发(同一时间)和次序(事情在时间中的相对位置)。很多时候我们需要对用户的工作需求进行建模和分析例如uml活动图,将工作流描述出来,这样可以描述出最佳性能和最简洁的界面。
这一章就是教会我们如何将代码变得宽松,变得容易修理。它教我们如何分析架构、如何将程序变得简洁,如何让程序的适应性变高。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!