iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 25
0

縮限變數的範圍

程式設計師都知道應該「避免使用全域變數」,事實上,對所有的變數而言「縮限範圍」都是很好的建議,不限於全域變數。

重要概念
儘可能減少可以看到變數的程式碼行數。

class LargeClass {
    string str_;
    
    void Method1() {
        str_ = ...;
        Method2();
    }
    
    void Method2() {
        // 使用str_
    }
    
    // 其他許多不會用到 str_ 的方法
};

就某方面而言,類別成員變數就像是內部的「小型全域」空間;特別是對很大的類別而言,很難記得所有的成員函數以及它們被哪地方修改,愈少小型全域變數愈好。對這個範例來說,可以讓 str__ 「退化」成為區域變數:

class LargeClass {
    void Method1() {
        string str_= ...;
        Method2(str);
    }
    
    void Method2(string str) {
        // 使用str_
    }
    
    // 其他許多不會用到 str_ 的方法
};

Reference

  • <<易讀程式之美學-提升程式碼可讀性的簡單法則 >>(The Art of Readable Code)

上一篇
變數與可讀性--1
下一篇
變數與可讀性--3
系列文
易讀程式之美學30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言