首先,我想說我沒有太多的重構經驗,不知道這是不是主題。避免布爾型標誌作爲屬性
我正在使用給定的代碼,其中使用了很多布爾屬性,我想避免這種情況,因爲可讀性,我不知道如何以正確的方式處理它。
class MyClass(){
boolean a;
...
void function(){
...
a = true;
...
}
void anotherFunction(){
...
if(a == true){
//do something
} else {
//do something else
}
...
}
...
}
的boolean a
在多個用於function
就像這樣,其中anotherFunction
s的運行關於到a
的代碼。由於在anotherFunction
中使用了多個屬性和局部變量,所以很難理解代碼和依賴關係,並且難以重構它。重構這個的努力可能會非常高。
我一直試圖避免使用這樣的布爾值,因爲在我看來,它不是很好的做法。如果我錯了,請毫不猶豫地糾正我。
現在我想知道我是否應該重構代碼並花費精力?在這種情況下可以使用某種模式嗎?
這對於定義不同的狀態非常好。感謝那。 –