程序员修炼之道阅读笔记2

第二章 注重实效的途径

7 重复的危害

DRY: Don't repeat yourself.

这句话可以说是最最重要的代码原则。当你为了追求绩效而去单纯的拷贝某一段现有的代码,而不做任何逻辑抽离和修饰时,你就已经是个『失足』程序员了。

当你觉得复用变得困难时,再退一步审视一下自己的代码,肯定有重构的空间。

8 正交性

几何概念,互相垂直的两条线就是正交的。

反应在软件设计中意味着,当一个组件的修改完全不会牵动另外一个时,这两者即正交。

避免耦合,分层分模块,善用设计模式。让系统富有弹性,可以随需应变。

9 可撤销性

还是系统的可变性,是否可以快速应付其中一些改变而快速改变。一言以蔽之:面向接口编程。

10 曳光弹

当你狙击时,你需要曳光弹帮你定位目标。一言以蔽之:做大型项目时,先出一个简陋可运行可展示的版本。不要在黑夜中盲狙。

11 原型与便笺

作为曳光弹的替代,可以使用原型来架构。这方面实践不多。

12 领域语言

『语言的界限就是一个人世界的界限』维特根斯坦的这句名言就足够描述了。java程序员会习惯性的啰嗦,c++程序员可能是最严谨的。

13 估算

敏捷团队的程序员每时每刻都在估算,估算这个功能需要多少个story point,估算这次重构需要多久。当你觉得难以估算工作量的时候,试着拆分。敏捷团队需要每个人每时每刻都知道自己和项目的进度,知道自己所处的位置。

原文地址:https://www.cnblogs.com/Lhxxx/p/14941020.html