지금 현업 앱개발에서 java vs kotlin 어떤 언어를 선호하나요?
현재 프로그래밍앱개발 쪽으로 관심을 가지고 있는 학생입니다.
다름아니라 현재 안드로이드 개발 언어가 java와 kotlin이 주로 사용되는 걸로 알고있는데,
현업에서는 실제로 어떤 언어를 더 선호하나요?
일단 두 언어를 공부하긴 했는데, 실제로 사용하려면 하나를 더 파고들어야 할 것 같아서
이렇게 질문 남깁니다.
2017년 말부터는 안드로이드 개발할때는 코틀린으로 대부분 개발을 했었습니다.
중간에 레거시 프로젝트를 제외한다면 전부다 코틀린으로 개발을 하고 있습니다.
개발문화가 잘되어 있는 회사의 경우 대부분 코틀린으로 개발한다고 보면 좋을 것 같습니다.
물론 너무 오래된 프로젝트의 경우에는 자바를 사용하는 경우도 있겠지만 신규 프로젝트의 경우 대부분 코틀린입니다.
최근에는 스프링 개발을 하지만 코틀린을 사용하고 있습니다.
개인적으로는 자바로 다시 돌아가고 싶지 않을 정도로 코틀린이 좋은 것 같습니다.
다른 곳은 어떨지 모르겠으나, 제가 몸담고 있는 현업 개발에서는 아직 코틀린보다는 자바가 더 우세한 것 같습니다. 구글 안드로이드 스튜디오만 봐도 default를 코틀린으로 지정할만큼 코틀린을 강하게 밀고 있긴한데, 저희 쪽에서는 아직은 생각만큼 코틀린을 많이 사용하고 있지 않습니다. 코틀린의 장점이 정말 많고 앞으로 코틀린을 꾸준히 밀고 있는 추세라, 두 언어 모두 공부를 하셨다면 코틀린 쪽에 좀 더 무게를 두고 공부를 해보시면 어떨까 싶습니다.
2017년 구글 I/O에서 코틀린은 공식언어로 지정되었습니다.
또한 2019년 구글 I/O에서도 다시한번 코틀린을 언급하면서 Kotlin First 시대를 알리고 구글에서 만드는 라이브러리들은 Kotlin으로 배포할것임을 알렸습니다.
안드로이드 공식 문서를 보시면서 많이 느끼셨겠지만 예제코드의 메인 언어가 코틀린으로 짜여져 있습니다.예전에는 Java코드밖에 없었는데 어느날 Kotlin탭이 추가되더니 요즘에는 아예 Kotlin탭이 더 먼저 나오기 시작했습니다.
또한 안드로이드를 떠나서 언어 차원에서도 Kotlin은 Java와의 완전한 상호운영성을 제공합니다.
따라서 미래 지향적으로 봤을 때는 Kotlin이 선호된다고 결론을 내릴 수 있을 것 같습니다.
다만 현업에서는 아직까지 Java기반으로 작성된 안드로이드 코드가 많이 남아있을 가능성이 큽니다. 그래서 현업하는 회사로 입사를 할 경우 Java 로 되어 있는 기존 코드로 읽을 수 있어야 할 가능성도 있습니다.
따라서 만약 하나만 해야한다면 장기적인 측면에서는 Kotlin을, 당장 취업을 해야한다면 Java를,
시간적인 여유가 있다면 둘다 하는 것이 바람직합니다.