1. 前言
    1. 争论
      1. 直接访问Field
      2. Self Encapsulate Field
    2. Replace Value with Object
      1. Dumb Data
      2. Articulate Object
    3. Replace Array with Object
    4. Magic Numbers
    5. links
      1. 单向
      2. 双向
  2. Self Encapsulate Field
    1. 动机
      1. 两种不同观点
        1. 直接访问
          1. 代码易阅读
        2. 函数间接访问
          1. subclass的覆写
          2. lazy initialization
          3. “啊,这只是个取值函数”
        3. 选择
          1. 团队规范
          2. 直接访问
          3. 遇到麻烦
          4. 间接访问
    2. 作法
      1. getting/setting method
      2. private field
    3. 范例