《程序员修炼之道——从小工到专家》阅读笔记02

第四章——注重实效的偏执

你不可能写出完美的软件。把它视为生活的公理,接受它,拥抱它,庆祝它。因为完美的软件不存在。

按合约设计(简称DBC),使用它的最大好处是它迫使需求与保证的问题走到前台来。

尽早检测问题的好处之一是你可以更早崩溃。而许多时候,让你的程序崩溃是你的最佳选择。要崩溃,不要破坏。(小声bb:不是很理解)

如果它不可能发生,用断言确保它不会发生。

将异常用于异常的问题。

分配资源的历程要有始有终。

第五章——弯曲,或折断

把你的代码组织成最小组织单位(模块),并限制它们之间的交互。如果随后出于折中必须替换某个模块,其他模块仍能够继续工作。使模块之间的耦合减至最小

要配置,不要集成。将抽象放进代码,细节放进元数据。从而带来更灵活、可适应性更好的程序。

分析工作流,以改善并发性。可以使用像UML活动图这样的表示法来捕捉它们对工作流的描述。

使视图与模型分离

黑板方式的编程消除了对太多接口的需要,从而能带来更优雅、更一致的系统。用黑板协调工作流

第六章——当你编码时

 避免用巧合编程,要深思熟虑的编程。总是意识到你在做什么,不要盲目的编程,按照计划行事,依靠可靠的事物,把时间花在重要的事情上。

O()表示法是处理近似计算的一种数学途径。即算法复杂度。

重写、重做和重新架构代码合起来,成为重构。违反DRY原则的重复、非正交的设计、过时的知识、性能等需要考虑重构代码。

测试你的软件,否则你的用户就得测试。测试是技术,更是文化。

不要使用你不理解的向导代码。

 

嗯还是得学,书里很多东西不理解,以后学的知识多了再看,估计会更有收获一点。

 

posted @   KongLong_cm  阅读(25)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示