重新组织数据(三)

11,Encapsulate Collection (封装集合)

        现象:有个函数返回一个集合

        要点:让这个函数返回该集合的一个只读副本,并在这个类中提供添加/移除集合元素的函数。

12,Replace Record With Data Class (以数据类取代记录)

        现象:你需要面对传统编程环境中的记录结果

        要点:为该记录创建一个“哑”数据对象。

13,Replace Type Code With Class (以类取代类型码)

        现象:类之中有一个数值类型码,但它并不影响类的行为

        要点:以一个新的类替换该数值类型码。

14,Replace Type Code With Subclasses (以子类取代类型码)

        现象:你有一个不可变的类型码,它会影响类的行为

        要点:以子类取代这个类型码。

15,Replace Type Code With State/Strategy (以 State/Strategy 取代类型码)

        现象:你有一个类型码,它会影响类的行为,但你无法通过 继承手法消除它。

        要点:以状态对象取代类型码。

16,Replace Subclass With Fields (以字段取代子类)

        现象:你的各个子类的唯一差别只在“返回常量数据”的函数身上

        要点:修改这些函数,使它们返回超类中的某个新增字段,然后销毁子类。


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值