Google은 Google I/O 2019에서 Android 개발이 점차 Kotlin 우선으로 될 것이라고 발표했으며 이 약속을 위해 노력해 왔습니다. Kotlin은 일반적인 코드 오류를 줄이고 기존 앱에 쉽게 통합되는, 간결하면서도 표현력이 높은 프로그래밍 언어입니다. Android 앱을 빌드하려면 Kotlin으로 시작하여 업계 최고의 기능을 활용하는 것이 좋습니다.
Google은 Kotlin을 사용한 Android 개발을 지원하려는 노력의 일환으로 Kotlin Foundation을 공동 설립했으며 컴파일러 성능과 빌드 속도를 개선하는 데 계속 투자하고 있습니다. Kotlin을 우선으로 하는 Android의 노력을 자세히 알아보려면 Kotlin을 위한 Android의 노력을 참조하세요.
Android 개발이 Kotlin 우선인 이유
Google은 컨퍼런스, 고객 자문위원회(CAB), Google 개발자 전문가(GDE) 및 자사 개발자 연구를 통해 개발자로부터 직접 받은 의견을 검토했습니다. 많은 개발자가 이미 Kotlin을 즐겨 사용하고 있으며 Kotlin 지원 추가에 관한 요청이 분명했습니다. 개발자가 말하는 Kotlin을 사용한 코드 작성의 이점은 다음과 같습니다.
- 표현력이 높고 간결함: 적은 노력으로 많은 작업을 할 수 있습니다. 상용구 코드를 적게 사용하면서도 아이디어를 풍부하게 표현할 수 있습니다. Kotlin을 사용하는 전문 개발자 중 67%가 Kotlin을 통해 생산성이 높아졌다고 말합니다.
- 더 안전한 코드: Kotlin에는 null 포인터 예외와 같은 일반적인 프로그래밍 실수를 방지하는 데 도움이 되는 여러 언어 기능이 있습니다. Kotlin 코드가 포함된 Android 앱은 다운될 가능성이 20% 낮습니다.
- 상호 운용 가능: Kotlin에서 Java 기반 코드를 호출하거나 Java 기반 코드에서 Kotlin을 호출합니다. Kotlin은 자바 프로그래밍 언어와 100% 상호 운용되므로 프로젝트에 Kotlin을 원하는 만큼 사용할 수 있습니다.
- 구조화된 동시 실행: Kotlin 코루틴을 사용하면 비동기 코드를 차단 코드처럼 쉽게 사용할 수 있습니다. 코루틴은 네트워크 호출부터 로컬 데이터 액세스에 이르기까지 백그라운드 작업 관리를 크게 단순화합니다.
Kotlin 우선이란 무엇을 의미할까요?
Jetpack 라이브러리, 샘플, 문서, 교육 콘텐츠와 같은 새로운 Android 개발 도구와 콘텐츠를 빌드할 때 Google은 Kotline 사용자를 염두에 두고 디자인하는 동시에 자바 프로그래밍 언어에서 Google의 API를 사용할 수 있도록 지원을 계속 제공합니다.
자바 언어 | Kotlin | |
---|---|---|
플랫폼 SDK 지원 | 예 | 예 |
Android 스튜디오 지원 | 예 | 예 |
린트 | 예 | 예 |
가이드 문서 지원 | 예 | 예 |
API 문서 지원 | 예 | 예 |
AndroidX 지원 | 예 | 예 |
AndroidX Kotlin 전용 API(KTX, 코루틴 등) | 해당 사항 없음 | 예 |
온라인 교육 | 최상의 결과 | 예 |
샘플 | 최상의 결과 | 예 |
다중 플랫폼 프로젝트 | 아니요 | 예 |
Jetpack Compose | 아니요 | 예 |
컴파일러 플러그인 지원 | 아니요 | 예: Kotlin Symbol Processing API는 Google에서 경량 컴파일러 플러그인을 개발하기 위해 만들었습니다. |
다양한 Kotlin 사용 사례
Google 엔지니어는 Kotlin에서 제공하는 언어 기능을 활용하고 있으며, 현재 70개 이상의 Google 앱이 Kotlin을 사용하여 빌드되었습니다. 여기에는 지도, Home, Play, Drive, 메시지 같은 앱이 포함됩니다. 한 가지 성공적인 예로 새로운 기능 개발을 Kotlin으로 이전한 Google Home팀을 들 수 있습니다. Kotlin으로 개발한 결과 코드베이스 크기가 33% 줄고 NPE 비정상 종료가 30% 감소하였습니다.
Android의 Kotlin에 관한 자세한 내용은 Android의 Kotlin FAQ를 참고하세요.