我得到下面的錯誤從reek
:臭佬代碼異味複製方法調用修復
lib/actions.rb -- 5 warnings:
Actions#move_forward calls (self.x_coordinate + unit) twice (DuplicateMethodCall)
Actions#move_forward calls place((self.x_coordinate + unit), self.y_coordinate, self.direction) twice (DuplicateMethodCall)
Actions#move_forward calls self.direction 5 times (DuplicateMethodCall)
Actions#move_forward calls self.x_coordinate 4 times (DuplicateMethodCall)
Actions#move_forward calls self.y_coordinate 4 times (DuplicateMethodCall)
下面就是該方法move_forward
def move_forward(unit = 1)
case self.direction
when Direction::SOUTH
place(self.x_coordinate, self.y_coordinate - unit, self.direction)
when Direction::EAST
place(self.x_coordinate + unit, self.y_coordinate, self.direction)
when Direction::NORTH
place(self.x_coordinate, self.y_coordinate + unit, self.direction)
when Direction::WEST
place(self.x_coordinate - unit, self.y_coordinate, self.direction)
else
end
end
我想刪除所有錯誤特別是重複的方法調用。在這種情況下,修復所有警告的最佳方法是什麼?
你的東西方向確實有相同的代碼,這可能是一個錯誤。 'reek'輸出看起來不符合您的代碼示例 - 您*有*使用單位,並且您粘貼的輸出引用包括'self.x_coordinate + 1'的調用。你能否檢查一下,確保兩件事情匹配(如果它們不這樣,它會讓你更難理解並提出改進建議)。 –
對不起剛更新了Reek錯誤信息 –