좋은 글 공유 감사합니다. 개인적으로 kotlin을 처음 쓸 때 java보다 편리한 점이 많아서 좋기도 하고 앞으로는 kotlin이 대세가 되지 않을까 싶었는데, 좀 쓰다보니 아직은 java더 좋다고 생각되는 부분도 많더군요.

  • 언어 자체는 kotlin이 확실히 편리하다고 생각
  • java의 ecosystem이나 troubleshooting 자료가 많은 것에 비해 kotlin은 좀 부족한 부분이 있음.
  • jdk 버전이나 kotlin 버전에 따라서 Java만 쓴다면 겪지 않아도 될 버그나 이슈들이 꽤 있음.
    Android는 kotlin으로 가도 괜찮다고 생각하지만 다른 환경 (Spring 이라던지..) 에서는 안정성이 중요하다면 아직은 Java가 더 나은 선택인 것 같습니다.

안정성의 사례 하나만 알려주실 수 있으실까요? 내공이 적어 아직 그런 사례를 만나보지 못했는데 몹시 궁금합니다

Jetbrains가 마구마구 릴리즈를 찍고있어서 그런지 모르겠지만, 의외로 컴파일러 버그 픽스가 많습니다.
https://github.com/JetBrains/kotlin/releases/tag/v1.7.20

컴파일러 자체가 터지는 경우도 종종 있고(이건 그나마 배포전이니깐 괜찮습니다만), 산출물에도 종종 버그가 포함됩니다.

더군다나 android의 경우에는 R8 bytecode optimiser 도 kotlin 버젼을 가립니다.
왜나면, kotlin 코드 전용 최적화 기능이 있는데 이것에 대한 공식적인 호환성 테이블 문서(Android Gradle Plugin : Kotlin Version)가 없습니다..
그래서 Android 프로젝트에서 코틀린 버젼을 변경할 때 주의해야 합니다;;;

관련 버그 리포트 : https://issuetracker.google.com/issues/207397158

감사합니다. 깊고 넓은 세계가 있군요..