封装集合(Encapsulate Collection)--代码重构1
来源:互联网 发布:spass软件 编辑:程序博客网 时间:2024/06/16 23:00
在某些应用场景中,向类的使用者隐藏类中的完整集合是一个很好的做法,比如对集合的add/remove操作中包
含其他的相关逻辑时。因此,以可迭代但不直接在集合上进行操作的方式来暴露集合,是个不错的主意。
我们来看代码:
重构前:
重构后:
总结:对集合进行了封装,没有将Add/Remove 方法暴露给类的使用者。在.NET Framework中,有
些类如ReadOnlyCollection,会由于封装集合而产生不同的行为,但它们各自都有防止误解的说明。这是一
个非常简单但却极具价值的重构,可以确保用户不会误用你暴露的集合,避免代码中的一些bug。
- 封装集合(Encapsulate Collection)--代码重构1
- Encapsulate Collection(封装群集)
- 重新组织数据之十一 :Encapsulate Collection(封装群集)
- Encapsulate Field(封装值域)
- 代码重构-封装字段
- 重构之美-Elcapsulate Collection(封装群集)
- 重构31式之封装集合
- Collection标签实现集合类的封装
- MyBatis的collection集合封装规则
- Self Encapsulate Field(自封装值域)
- 31天学习重构(java)---1.封装集合
- 代码重构调试问题集合
- 集合1 collection
- Collection集合1
- 【Java重构系列】重构31式之封装集合
- 【Java重构系列】重构31式之封装集合
- 【Java重构系列】重构31式之封装集合
- 【Java重构系列】重构31式之封装集合
- 迅雷终结者
- Android的垃圾回收机制
- 开源BI平台Openi的开发数据仓库系统(上)
- Nginx
- RecordStore实现类似于SQL功能
- 封装集合(Encapsulate Collection)--代码重构1
- Win版VirtualBox从USB设备启动方法
- spring & freemarker
- PGP快速上手教程
- VC快捷方式
- Memory Performance Information
- lm-sensorss调节ASUS IPX7A-ION主板风扇转速
- ORACLE根据某一列的值修改另一列的值
- 关于>>得到磁盘的相关