摘要:
第3章 开放封闭原则 开放封闭原则(Open-Closed Principle)可以被表述如下:软件实体(类,模块,函数,等等)应该对扩展开放,对修改封闭。 开放封闭原则的要义是:软件应该能够在不修改或尽量少修改现在有源代码的情况下,实现易扩展性。 实际上,基于共性变性分析所获得的设计就是遵守开放封闭原则的。例如,对于前一章的Student类的例子,如果我们现在需要按CSV格式产生学生信息报告,那... 阅读全文
摘要:
第2章 单一职责原则 单一职责原则(Single Responsibility Principle)可以如下表述:一个class只能有唯一一个引起它改变的原因。 换言之,如果你可以想到有超过一个动因来修改一个class,那么这个class就有不止一个职责,它就违反了单一职责原则。 单一职责原则说起来简单,但要真正贯彻却不容易,因为我们都习惯于把一套(而不是一个)职责指派给一个class。因此在实际... 阅读全文
摘要:
第1章 导论 1.1 区分优良的设计与低劣的设计 高质量的设计具有若干共同的特点,我们把这些特点列在下面: 最小复杂性(Minimal complexity)。设计的首要目标应该是使复杂性降到最小。避免做“自作聪明”的设计。“自作聪明”的设计往往难以理解,导致聪明反被聪明误。应该做“简单”而“易于理解”的设计。 易扩展性(Extensibility)。易扩展性指无需修改底层结构就能改进系统。 松散... 阅读全文