더북(TheBook)

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)

변수 이름이 문서화의 역할을 하기 때문에 명시적으로 작성한 코드가 더 쉽게 읽히며 중간 변수의 타입을 확인하고 값을 표시할 수 있기 때문에 더 쉽게 디버그할 수 있다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.