더북(TheBook)

주석이 없었다면 수는 2.1 매직 넘버를 상수로 대체에서 보았던 매직 넘버입니다. 주석은 그 ‘매직’을 가져와 수에 의미를 부여합니다.

나쁘지 않은 방법입니다. 어쨌든 주석은 분명히 도움이 되니까요. 하지만 코드 자체로 더 의미 있게 만들 수 있습니다.

아래 방법을 보세요.

enum SmallDistanceUnit {

    CENTIMETER,
    INCH;

    static final double INCH_IN_CENTIMETERS = 2.54;
    static final double CENTIMETER_IN_INCHES = 1 / INCH_IN_CENTIMETERS; 
    static final int IDENTITY = 1;

    double getConversionRate(SmallDistanceUnit unit) { 
        if (this == unit) {
            return IDENTITY;
        }

        if (this == CENTIMETER && unit == INCH) { 
            return CENTIMETER_IN_INCHES;
        } else {
            return INCH_IN_CENTIMETERS;
        } 
    }
}
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.