Head First 设计模式笔记

1、设计原则

  1. 将变化部分和不变部分分离出来,让代码适应变化;(封装变化)
  2. 针对接口编程,而不是针对实现编程;(即,将一类行为抽象成行为类接口,可以应对变化,符合原则1)
  3. 多用组合,少用继承;(这条原则,是建立在原则2的基础上的,好处是系统有很大的弹性,运行时可以动态改变对象的行为——例如:策略模式 ‘定义算法簇’ 
  4. 学会使用共享模式词汇,简化沟通;
  5. 建立弹性的设计,可以维护,可以应对变化;
  6. 高内聚、松耦合;
  7. 类应该对扩展开发,对修改关闭(OCP——开放关闭原则)

2、设计模式

  1. 策略模式:定义算法簇,分别封装起来,这些算法可以相互替换,让使用者与算法(即行为)进行分类,同一使用者在不同的场景中,使用不同的算法。(有点向人多年形成的各种经验,每种经验都有各自的适用场景,不能用一招而致天下敌);
  2. 观察者模式:出版者(publisher)[负责发布主题] + 订阅者(subscriber)[负责注册主题和接收主题及取消注册];如一种微服务间通信框架pubsub机制。属于一对多的关系,当一个对象状态改变,其他依赖者都会受到通知。

    3、装饰者模式,动态地将责任附加到对象上。

        

      

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值