숫자를 이용하는 또 다른 문제는 그 의도를 파악하기 힘들다는 것이다. 200과 같은 숫자는 뭐든 될 수 있다. 즉, 우리는 정확히 그것이 무엇을 의미하는지 알 수 없다. 그러니 값을 하드 코딩해서는 안 된다.
클래스는 값을 캡슐화하는 방법 중 하나이다. 다음과 같이 클래스를 이용해 HTTP 상태 코드를 캡슐화할 수 있다.
class HttpStatusCode {
public const int OK = 200;
public const int NotFound = 404;
public const int ServerError = 500;
// ... 등등
}
이렇게 하면 다음과 같이 코드를 변경해 HTTP 요청이 성공했는지도 확인할 수 있다.
if (response.StatusCode == HttpStatusCode.OK) { … }
이 버전이 문맥, 값의 의미, 어떤 맥락에서 무슨 의미인지를 바로 이해할 수 있을 만큼 훨씬 잘 설명한다. 완벽한 설명과도 같다.