写点什么

架构师训练营第三周学习笔记

用户头像
邢永春
关注
发布于: 2020 年 11 月 07 日
  1. 设计模式:是一种可重复使用的解决方案。

  2. 简单工厂模式:使用一个配置文件描述类名,可以让调用者和工厂类都满足开闭原则,是比较常用的一种创建模式。缺点是缺少编译检查,创建时不能传参。

  3. 单例模式:一个类只允许创建一个实例,并且只能创建一个实例。分为饿汉模式和懒汉模式,饿汉模式是在类初始化的时候创建实例,懒汉模式是在需要的时候创建实例,懒汉模式需要避免多线程时创建出多个实例,所以要在方法上增加 synchonized 关键字。尽量使用饿汉模式。

  4. 适配器模式:把一个已经存在类的方法使用接口需要的方法名去调用,分为类适配器和对象适配器。类适配器,系统中已经有接口 A 和类 B,现在需要在 APP 中使用接口 A 的方法名调用 B 的方法,这时可以创建一个适配器类 C,C 实现接口 A,继承类 B,在实现接口 A 的方法中调用父类 B 的方法,然后将 C 的实例注入 APP,APP 就可以用 A 接口的方法名调用 B 的方法了;对象适配器:创建一个适配器类 D,D 实现接口 A,但不继承类 B,而是使用组合的方式创建一个 B 的实例,在实现接口 A 的方法中调用 B 实例的方法。组合优于继承,所有优先使用对象适配器。

  5. 模版方法模式:通过继承的方法实现扩展,基类负责算法的轮廓和骨架,子类负责算法的具体实现。JUnit 中的 TesCaset 类使用了模版方法模式,在基类的 runBare 方法中定义的方法的执行顺序,先执行 setUp,在执行 runTest,最后执行 tearDown,子类只需要实现这些方法就可以了,不用关心调用顺序。

  6. 策略模式:在系统需要从多种算法中选择一种的时候使用,在重构时可以使用策略模式替换条件语句。

  7. 组合模式:适用于树型结构的类,叶节点和父节点都实现同一个接口,调用者不需要区分是父节点和事子节点。

  8. 装饰器模式:可以在不改变对客户端接口的前提下扩展现有对象的功能。装饰器类和被装饰的类实现同一个接口,在装饰器类的构造函数中传入被装饰类的实例,在接口方法中调用被装饰类实例的同名方法和编写装饰器自己的功能。多个装饰器可以互相装饰。


用户头像

邢永春

关注

还未添加个人签名 2020.02.06 加入

还未添加个人简介

评论

发布
暂无评论
架构师训练营第三周学习笔记