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를 사용할 수 있도록 지원을 계속 제공합니다.
Google 엔지니어는 Kotlin에서 제공하는 언어 기능을 활용하고 있으며, 현재 70개 이상의 Google 앱이 Kotlin을 사용하여 빌드되었습니다. 여기에는 지도, Home, Play, Drive, 메시지 같은 앱이 포함됩니다. 한 가지 성공적인 예로 새로운 기능 개발을 Kotlin으로 이전한 Google Home팀을 들 수 있습니다. Kotlin으로 개발한 결과 코드베이스 크기가 33% 줄고 NPE 비정상 종료가 30% 감소하였습니다.
이 페이지에 나와 있는 콘텐츠와 코드 샘플에는 콘텐츠 라이선스에서 설명하는 라이선스가 적용됩니다. 자바 및 OpenJDK는 Oracle 및 Oracle 계열사의 상표 또는 등록 상표입니다.
최종 업데이트: 2025-07-27(UTC)
[null,null,["최종 업데이트: 2025-07-27(UTC)"],[],[],null,["# Android’s Kotlin-first approach\n\nAt Google I/O 2019, we announced that Android development will be\nincreasingly Kotlin-first, and we've stood by that commitment. Kotlin is an\nexpressive and concise programming language that reduces common code errors\nand easily integrates into existing apps. If you're looking to build an\nAndroid app, we recommend starting with Kotlin to take advantage of its\nbest-in-class features.\n\nIn an effort to support Android development using Kotlin, we co-founded the\n[Kotlin Foundation](https://kotlinlang.org/foundation/kotlin-foundation.html)\nand have ongoing investments in improving compiler performance and build\nspeed. To learn more about Android's commitment to being Kotlin-first, see\n[Android's commitment to Kotlin](https://android-developers.googleblog.com/2019/12/androids-commitment-to-kotlin.html).\n\nWhy is Android development Kotlin-first?\n----------------------------------------\n\nWe reviewed feedback that came directly from developers at conferences, our\nCustomer Advisory Board (CAB), Google Developer Experts (GDE), and through\nour developer research. Many developers already enjoy using Kotlin, and the\nrequest for more Kotlin support was clear. Here's what developers appreciate\nabout writing in Kotlin:\n\n- **Expressive and concise:** You can do more with less. Express your ideas and reduce the amount of boilerplate code. 67% of professional developers who use Kotlin say Kotlin has increased their productivity.\n- **Safer code:** Kotlin has many language features to help you avoid common programming mistakes such as null pointer exceptions. Android apps that contain Kotlin code are 20% less likely to crash.\n- **Interoperable:** Call Java-based code from Kotlin, or call Kotlin from Java-based code. Kotlin is 100% interoperable with the Java programming language, so you can have as little or as much of Kotlin in your project as you want.\n- **Structured Concurrency:** Kotlin coroutines make asynchronous code as easy to work with as blocking code. Coroutines dramatically simplify background task management for everything from network calls to accessing local data.\n\nWhat does Kotlin-first mean?\n----------------------------\n\nWhen building new Android development tools and content, such as Jetpack\nlibraries, samples, documentation, and training content, we will design\nthem with Kotlin users in mind while continuing to provide support for\nusing our APIs from the Java programming language.\n\n| | Java language | Kotlin |\n|------------------------------------------------------------|---------------|----------------------------------------------------------------------------------------------------------------------------------------|\n| Platform SDK support | Yes | Yes |\n| Android Studio support | Yes | Yes |\n| Lint | Yes | Yes |\n| Guided docs support | Yes | Yes |\n| API docs support | Yes | Yes |\n| AndroidX support | Yes | Yes |\n| AndroidX Kotlin-specific APIs (KTX, coroutines, and so on) | N/A | Yes |\n| Online training | Best effort | Yes |\n| Samples | Best effort | Yes |\n| Multi-platform projects | No | Yes |\n| Jetpack Compose | No | Yes |\n| Compiler plugin support | No | Yes - The [Kotlin Symbol Processing API](https://github.com/google/ksp) was created by Google to develop lightweight compiler plugins. |\n\nWe use Kotlin, too!\n-------------------\n\nOur engineers enjoy the language features Kotlin offers, and today over 70 of\nGoogle's apps are built using Kotlin. This includes apps like Maps, Home, Play,\nDrive, and Messages. One example of success comes from the\n[Google Home team](/stories/apps/google-home), where migrating new feature\ndevelopment to Kotlin resulted in a 33% reduction in codebase size and a 30%\nreduction in the number of NPE crashes.\n\nTo learn more about Kotlin on Android, see the\n[Kotlin on Android FAQ](/kotlin/faq)."]]