重构——17引入本地扩展(Introduce Local Extension)

引入本地扩展(Introduce Local Extension)

你需要为服务类提供一些额外函数,但你无法修改这个类;建立一个新类,使它包含这些额外函数,让这个类扩展成为源类的子类或者包装类

一、动机

1、需要的额外函数超过俩,Introduce Foreign Method Hold不住了

2、包装类和子类怎么选择?

二、做法

1、建立一个扩展类,将它作为原始类的子类或者包装类

2、在扩展类中加入转型构造函数

3、在扩展类中加入新特性

4、根据需要,将源对象替换为扩展对象

5、将针对原始类定义的所有外加函数搬移到扩展类中

6、重新组织数据

上一篇:将你的物联网设备位置快速接入到地图上,只需要10分钟!


下一篇:Google全球副总裁Vint Cerf:中国物联网发展不得不关注的几大问题