美文网首页
重构读书笔记-8_5-Replace_Array_With_Ob

重构读书笔记-8_5-Replace_Array_With_Ob

作者: MR_Model | 来源:发表于2019-06-26 10:10 被阅读0次

    重构第八章

    5.Replace Array with Object(以对象取代数组)
    你有一个数组(array),其中的元素各自代表不同的东西。以对象替换数组。对于数组中的每个元素,以一个值域表示之。

    Example:

    string row = new string[3];
    row[0] = "RiverPool";
    row[1] = "15";
    string name = row[0]
    int wins = Integer.parseInt(row[1]);
    

    Analyse:
    示例中,有一个数组,其中有三个元素,分别保存一支球队的名称、获胜场次、失败场次。
    使用的时候,你会发现一个数组中容纳了不同的信息,会给使用数组的用户带来麻烦。这个时候可以使用Replace Array with Object(以对象取代数组),通过值域名称和函数名称传达信息的含义,还可以对数据进行封装之类的操作。

    End:

    class Perfomance() {
        private int wins;
        private string name;
        public void SetWins(int arg) {
            wins = arg;
        }
        public int GetWins() {
            return wins;
        }
        public void SetName(string arg) {
            name = arg;
        }
        public string GetName() {
            return name;
        }
    }
    

    Conclusion:

    Replace Array with Object(以对象取代数组)将意味不明的数组通过对象来代替,使得数组中原本代替的含义清晰明了。
    数组只应该用于以某种顺序容纳一组相似对象

    注意

    重构必须在有单元测试的情况下,保证之前的功能修改后不收影响。切记!!!

    相关文章

      网友评论

          本文标题:重构读书笔记-8_5-Replace_Array_With_Ob

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