2.7 이어붙이기 대신 서식화

    class Mission {
    
        Logbook logbook;
        LocalDate start;
    
        void update(String author, String message) {
            LocalDate today = LocalDate.now();
            String month = String.valueOf(today.getMonthValue());
            String formattedMonth = month.length() < 2 ? "0" + month : month; 
            String entry = author.toUpperCase() + ": [" + formattedMonth + "-" + 
                    today.getDayOfMonth() + "-" + today.getYear() + "](Day " + 
                    (ChronoUnit.DAYS.between(start, today) + 1) + ")> " + 
                    message + System.lineSeparator();
            logbook.write(entry);
        }
    }

    이해도와 가독성은 코드뿐만 아니라 코드가 생성할 출력에서도 중요합니다.

    긴 문자열을 생성할 때 서식 문자열을 사용하면 더 읽기 쉽게 만들 수 있습니다.

    NullPointerException 피하기에서 보았던 일지(LogBook)를 다시 활용하겠습니다. 문제는 출력이 실제로 어떤 모습일지 알기 어렵다는 점입니다. String 변수가 여러 개이고 어떤 변수는 자바의 인라인(in-line) 표기까지 사용합니다.

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