이 책은 kotlin의 기본 문법을 다루지 않습니다.
가상의 회사의 애플리케이션(트래블레이터)을 java에서 kotlin으로 리펙토링하는 예로 책이 구성되어 있습니다.
또한, 리팩터링을 하는 것이기 때문에 java와 kotlin이 공존하는 것으로 상정하고 있어서 양쪽을 지원해야하는 복잡함이 있습니다.
실제로 있는 소스에서 변환한다면 많이 겪을 수 있는 상황인 것 같습니다.
java예제 자체도 1.8을 사용하는 저한테는 낯선 문법이 눈에 보이네요.
저자들은 언어마다 '결'이 다르다고 표현합니다.
OPP, FP의 차이는 철학이 다르다고 할텐데요. 여기서 사용된 java소스도 어느정도 FP의 영향을 받은 것이고,
변경된 Kotlin소스도 OOP의 특성을 가지고 있어서 '결'이라고 표현한 것 같습니다.
'결'은 해당 언어가 추구하는 방향/특성 정도로 표현될 수 있을 것 같습니다.
java스러웠던 소스를 kotlin스러운 소스로 변경하는 거죠.
기본적으로 java보다 kotlin이 좀 더 짧게 표현이 가능합니다.
물론, 짧은게 전적으로 좋다고 할 수는 없지만 그래도 큰 장점이죠.
저자의 의도는 아닐 것 같지만, 읽으면서 큰 장점이 있었습니다.
kotlin보다 java에 익숙한 사람에게는 kotlin을 java로 설명해준 것처럼 볼 수 있었습니다.
java에서 kotlin으로 넘어가려는 개발자에게 도움이 많이 될 것 같습니다.