软件设计原则

  1. 所有编程都是维护编程,因为你很少写原创代码。只有你在最初的10分钟里键入的代码是原创的。仅此而已。
  2. SOLID单一责任原则(SRP)、开放封闭原则(OCP)、里氏代换原则LSP、接口分离原则(ISP)、依赖反转原则(DIP)。
  3. 高内聚,低耦合。
  4. 架构师的设计应该解决手头上的问题、但也要足够通用,可以解决将来的问题和需求。
  5. 使用继承有一些安全的方式(例:只向派生类添加代码),但出来的对象图总是很难反映现实世界里德默写领域的整个模型。
  6. 单一责任原则:一个类有且只有一个改变理由。
  7. 开放封闭原则:模块应该对扩展开放,但对修改封闭。
  8. 里氏代换原则:子类应该可以替换它们的基类。(派生类不能限制基类的执行条件)。
  9. 接口分离原则:不应该使用胖接口(不应该强制客户以来于它们不用的接口)。
  10. 依赖反转原则:高级模块不应该依赖于底层模块。而这都应该依赖于抽象。
  11. 处理依赖的模式:      
    1. 服务器定位模式
    2. 依赖注入模式     
  12. 编码向量      
    1. KISS(Keep It Simple,Stupid):不必要的复杂性对于给定的系统需求而言都是附加的逻辑。
    2. YAGNI(You Ain’t Gonna Need It):实现需求上没有提到的任何功能都是有问题的
    3. DRY(Don’t Repeat Yourself):避免保持系统不同部分同步的麻烦。一块代码只有一个明确的实现是重构的首要目标

       

你可能感兴趣的:(软件设计原则)