SmalltalkBestPracticePatterns:4.1
- 4.1 상태(state)
물론 스몰토크 객체를 코딩할 때 가장 중요한 것은 행위를 어떻게 명시하느냐이지만, 상태가 없다면 그 어떤 것도 할 수 없다. 계산을 시작하기 전에 우선 문제가 무엇인지 기록해야 한다. 계산하는 동안에 중간 결과를 저장해야 하는 경우도 종종 있다. 또 계산이 완료되면 해답을 기억해야 한다.
상태와 가장 관련된 결정들은 코딩보단 모델링에 관한 결정들이므로, 본 책에 실린 패턴들은 전말을 모두 들려주지는 않는다. 하지만 표현과 관련해 당신이 내리는 전략적인 결정들은 당신의 코드가 다른 사람들에게 정보를 얼마나 잘 전달하는지에 중요한 영향을 미칠 것이다.
이번 절에서는 두 가지 유형의 상태를 논하고자 한다: 인스턴스 변수와 임시 변수. 물론 둘 중에 메서드가 계산하는 동안에만 살아 있는, 코딩의 완전한 인공물인 임시 변수를 더 철저하게 다루겠다. 인스턴스 변수 또한 코딩에 중요한 역할을 하는 것은 사실이나, 본 책에서는 코딩에서의 역할과 모델링에서 역할만 어느 정도 다루고자 한다.