美文网首页
[8] Data Clumps(数据泥团)

[8] Data Clumps(数据泥团)

作者: rxdxxxx | 来源:发表于2015-12-20 20:37 被阅读481次

8 Data Clumps(数据泥团)


数据项就像是小孩子,喜欢成群结对地待在一块儿. 你常常可以在很多地方看到相同的三四项数据:

两个类中相同的字段,许多函数签名中相同的参数.

这些都是绑在一起出现的数据真应该拥有属于他们自己的对象.首先请找出这些数据以字段形式出现的地方.

  • 首先请找出这些数据以字段形式出现的地方,运用Extract Class 将它们提炼到一个独立对象中.
  • 然后将注意力转移到函数签名上,运用Introduce Parameter Object(引入参数对象)Preserve Whole Object(保持对象完整) 为它减肥.

这么做直接好处是可以将很多参数列缩短,简化函数调用.是的,不必在意Data Clumps 只用上新对象的一部分字段,只要以新对象取代两个(或者更多)字段,你就值回票价了.

一个好的批判办法是: 删除众多数据中的一项. 这么做,其他数据有没有因而失去意义? 如果它们不在有意义,这就是明确信号:你应该为它们产生一个新对象.

减少字段和参数的个数, 当然可以去除一些坏味道, 但更重要的是: 一旦拥有新对象, 你就有机会让程序散发出一种芳香. 得到新对象后, 你就可以着手寻找Feature Envy, 这个可以帮助你指出能够移至新类中的种种程序行为. 不必太久, 所有的类都将再它们的小小社会中充分发挥价值.

相关文章

  • [8] Data Clumps(数据泥团)

    8 Data Clumps(数据泥团) 数据项就像是小孩子,喜欢成群结对地待在一块儿. 你常常可以在很多地方看到相...

  • 5. 多实例配置

    配置数据目录mkdir -p /data/330{7,8,9}/data 配置文件cat > /data/3307...

  • 重构坏味道:数据泥团

    数据泥团 症状 数据泥团中所有的数据字段就像小孩子,总喜欢成群结对地的待在一块如果删掉众多数据字段中的一项,其他数...

  • D7-利用Mysql进行数据分析实例

    一、准备工作及背景1、准备数据库:data···create database data charset=utf8...

  • 2018-02-14

    JAVA数据类型: 基本数据类型(Primitive Data Type):8种。 1) 整型 byte 1B 8...

  • Harry Potter and chamber secrets

    1. a dark patchwork of fields and clumps of trees. (非常形象的...

  • 第三章 关系数据库标准语言SQL

    SQL集数据查询(Data Query)、数据操作(Data Manipulation)、数据定义(Data De...

  • C3. Messages

    数据字段!Time Data Data Data Data Data Data Data Data!Time Da...

  • 基本数据类型(Primitive Data Type):8种。 1) 整型 byte 1B ...

  • 队列操作

    typedef struct { uint32 Data[MAX]; //存储数据的数组 uint8 Fr...

网友评论

      本文标题:[8] Data Clumps(数据泥团)

      本文链接:https://www.haomeiwen.com/subject/pwlmhttx.html