현재 라이브러리는 label(String value)를 제공해요. 개정안에서는 이 메서드를 유지하면서 label(Integer value)를 추가하려고 해요.
이미 컴파일된 호출 코드는 계속 원래 시그니처를 지정해요. 반면 기존 소스의 label(null) 호출은 이 두 메서드를 대상으로 다시 빌드하면 모호해져요. 이 예에서는 어느 오버로드의 구현도 바뀔 필요가 없어요.
릴리스 안내에서 기존 바이너리를 유지하는 호출자와 소스를 다시 빌드하는 호출자를 구분해 주면 좋겠어요. 후자는 이전 의미를 유지하기 위해서라도 코드를 고쳐야 할 수 있으니까요. 어떤 마이그레이션 안내가 있어야 이 추가가 그 수고를 감수할 만할까요? 언제는 별도 메서드 이름을 쓰는 편이 기존 사용자를 더 배려하는 선택일까요?