226
자바에서 코틀린으로
덩컨은 멋진 엘비스 연산자를 좋아하지만 자신이 짠 방식의 코드가 더 명확하다고 생각한다.
아마 여러분의 팀에서도 이런 작은 전투가 있을 것이다.
이제
isIn
같은 기초적인 연산을
Campsite
에 대한 (확장 함수의 반대인) 메서드로 진급시킬
수도 있다. 또는
Address
의 메서드로 만들면 더 나을 것이다. 이런 식으로 처리하면 지역이 엔
티티가 아니어서 생기는 문제는 문제에 가장 가까운 타입 안에 격리되며, 그 안에서 문제를 해
결하면 코드 기반의 나머지 부분에 끼치는 영향을 최소화할 수 있다.
11.5
다음으로 나아가기
코틀린은 필드의 뒷받침을 받는 프로퍼티와 계산된 프로퍼티를 동시에 지원하는 편리한 문법
을 제공하며, 이런 문법을 사용하면 내부적으로는 두 가지 모두 메시지를 전달하는 동일한 메
커니즘이지만 함수 호출과 프로퍼티 접근을 서로 구분해 표현할 수 있다.
반환 값이 값 타입이고 같은 클래스 안의 다른 값에만 의존하며 계산 비용이 많이 들지 않으면
메서드보다 프로퍼티를 선호해야 한다. 이런 경우에는 메서드를 쉽게 프로퍼티로 리팩터링할
수 있고 우리 코드를 더 이해하기 쉽게 만들 수 있다.