天天看點

程式設計基本原則 —— 避免備援代碼

        最近組内做代碼評審,看到了如下一段代碼,這段代碼從功能上、甚至效率上來講都沒有問題,但從可讀性和可維護性來講,可優化的地方顯而易見:函數‘foobar’接收‘op_type’為輸入參數,該函數的調用完全可以放在整個switch之後,做一處調用即可,這樣後期‘foobar’有任何變化,這段代碼隻需相應修改一處代碼即可。

        這段代碼出自一個有幾年工作經驗的程式員之手,實屬不該 —— 即使一個程式設計初學者,也應該知道盡量“避免備援代碼”這一基本原則。

switch(op_type){

    case ADD:

        foobar(ADD);

        break;

    }

    case MODIFY:

    {

        foobar(MODIFY);

        break;

    }

    case DELETE:

    {

        foobar(DELETE);

        break;

    }

    default:

    {

        log("invalid op_type");

        return -1;

    }

}

繼續閱讀