20.3.2 크고 복잡한 표현식이 예상한대로 동작하지 않는다
읽을 수만 있다면 복잡한 표현식을 작성하는 것도 괜찮지만, 디버그하기는 어려울 수 있다. 복잡한 표현식은 임시 변수를 사용한 일련의 할당문으로 나누는 것이 보통은 더 좋은 생각이다.
예를 들어보자.
self.hands[i].addCard(self.hands[self.findNeighbor(i)].popCard())
이 코드는 다음과 같이 재작성할 수 있다.
neighbor = self.findNeighbor(i)
pickedCard = self.hands[neighbor].popCard()
self.hands[i].addCard(pickedCard)
변수 이름이 문서화의 역할을 하기 때문에 명시적으로 작성한 코드가 더 쉽게 읽히며 중간 변수의 타입을 확인하고 값을 표시할 수 있기 때문에 더 쉽게 디버그할 수 있다.