书:pan.baidu.com/s/1CoxNwhlbnomHIn6yi0KBJQ
提取码:tqlj
我的阅读笔记:
- SRP – 单一职责原则 (Single Responsibility Principle):一个类应该只有一个引起变化的原因。 将一个类的职责限制在一个领域,确保它只有一个修改的原因。
- OCP – 开闭原则 (Open/Closed Principle):类应该对扩展开放,对修改关闭。 通过抽象化和多态性实现,在不修改现有代码的情况下添加新功能。
- LSP – 里氏替换原则 (Liskov Substitution Principle):派生类应该能够替换掉其基类而不改变程序的正确性。 子类必须遵守父类的契约。
- ISP – 接口隔离原则 (Interface Segregation Principle):不应该强迫客户端实现它们用不到的接口。 将大接口分解为更小、更特定的接口,以满足实际需求。
- DIP – 依赖反转原则 (Dependency Inversion Principle):高层模块不应该依赖于低层模块,两者都应该依赖于抽象。 抽象不应该依赖于具体实现,具体实现应该依赖于抽象。
- KISS – 保持简单原则 (Keep It Simple, Stupid):代码应该保持简单,易于理解,避免过度设计。 简单的代码更容易维护和修改。
- YAGNI – 你不需要它 (You Aren’t Gonna Need It):不要为未来的可能性添加功能,只关注当前的需求。 避免过度工程,只实现当前需要的功能。
- 迪米特法则(Law of Demeter):对象应该只与其直接的邻居进行通信。 避免对系统中其他部分的过多了解,降低耦合度。
- 代码的可读性:使用有意义的变量和函数名。 保持代码缩进和格式的一致性。 添加注释解释复杂的算法或关键业务逻辑。
- 测试驱动开发(TDD):
- 先写测试,再写实现。
- 编写测试可以确保代码的质量和可维护性。