设计模式-编程方法论

62 阅读2分钟

面向对象

目前流行的编码风格有三种:面向过程/面向对象/函数式编程,其中最主流的就是面向对象,它的主要知识点如下:

  • 封装,抽象,继承,多态;
  • 面向对象和面向过程的区别和联系;
  • 面向对象分析、面向对象设计、面向对象编程;
  • 接口和抽象类的区别及应用场景;
  • 基于借口而非实现编程的设计思想;
  • 多用组合少用继承的设计思想;
  • 面向过程的贫血模型和面向对象的充血模型;

设计原则

设计原则是对代码设计经验的抽象总结,学习的过程中需结合设计的初衷,解决的问题和应用场景进行理解,常用的设计原则如下:

  • SOLID原则之SRP单一职责原则
  • SOLID原则之OCP开闭原则
  • SOLID原则之LSP里氏替换原则
  • SOLID原则之ISP接口隔离原则
  • SOLID原则之DIP依赖倒置原则
  • DRY原则
  • KISS原则
  • YAGNI原则
  • LOD法则

设计模式

设计模式是针对开发过程中遇到的问题总结出来的设计思路,经典的设计模式有23种,主要分为以下几类:

  • 创建型
    • 常用的如单例模式,工厂模式,建造者模式;
    • 不常用的如原型模式;
  • 结构型
    • 常用的如代理模式,桥接模式,装饰者模式,适配器模式
    • 不常用的如门面模式,组合模式,享元模式
  • 行为型
    • 常用的如观察者模式,模板模式,策略模式,职责模式,迭代器模式,状态模式
    • 不常用的如访问者模式,备忘录模式,命令模式,解释器模式,中介模式

编程规范

编程规范主要的目的是解决代码的可读性。参考书籍可以阅读:

  • 《重构》
  • 《代码大全》
  • 《代码整洁之道》

代码重构

随着功能的迭代和代码的堆砌,持续重构是保证代码质量不下降的重要手段。重构需要掌握的知识点包括:

  • 重构的目的,对象,时机,方法
  • 保证重构不出错的技术手段:单元测试和代码的可测试性
  • 两种不同规模的重构:大重构(大规模高层次)和小重构(小规模低层次)