问题驱动,关注为什么存在

面向对象章节包含了设计模式、面向对象思想、类图、设计原则。

设计模式和设计原则结合思考

谈谈对设计模式理解?

诞生目的主要经验复用、术语减少沟通成本。为设计原则服务

  • 创建型、结构型、行为型老是记了忘, 主要还是用的少, 结合实践, 才能更好地记住, 最好是项目中真正使用来优化代码。

创建型无非就是如何更好地创建出对象, 单例、原型、工厂都在spring中见过, 都体现了封装特性。有了简单工厂还要工厂方法,也体现了开闭原则,扩展开放。

结构型理解为多个对象配合,体现利用组合而不是继承来实现复杂功能(合成复用原则),目的是不继承下利用其他对象功能

行为型主要解决对象之间行为调用强耦合,封装变化的行为

用过的设计模式?

  • spring中的单例、原型、创建bean的工厂方法beanFactory

    lombok中builder, 创建处理模块的时候可能用到了抽象工厂创建对象族