자바로 안드로이드 앱을 짜다 보면 "왜 이렇게 코드가 길지?" 싶을 때가 많습니다. 이 불편을 정조준해서 나온 언어가 코틀린(Kotlin)이고, 지금은 구글이 지정한 안드로이드 공식 1순위 언어입니다.

자바와 100% 친구

코틀린은 JVM에서 돌아가고 자바와 완벽하게 호환됩니다. 기존 자바 프로젝트에 코틀린 파일을 섞어 쓸 수 있어서, 점진적으로 갈아타기 좋습니다. 같은 일을 더 적은 코드로 처리하는 것이 가장 큰 매력입니다.

첫 코드

// 데이터 클래스 한 줄이면 끝
data class User(val name: String, val age: Int)

fun main() {
    val user = User("코틀린", 9)
    println("${user.name}, ${user.age}살")   // 자동 생성된 기능 활용
}

자바라면 수십 줄이 필요한 데이터 클래스를 한 줄로 끝냅니다. 널 안정성(?)으로 악명 높은 널 포인터 오류도 크게 줄여줍니다.

입문자를 위한 팁

  • 안드로이드 앱 개발이 목표라면 처음부터 코틀린으로 시작하는 게 정석입니다.
  • 자바를 안다면 적응이 매우 빠릅니다. 거의 "더 편한 자바"처럼 느껴집니다.
  • 서버(Ktor, 스프링)에서도 점점 채택이 늘고 있어 활용처가 넓어지는 중입니다.

간결함과 안정성, 그리고 거대한 자바 생태계를 모두 가져가는 영리한 선택입니다.

자바를 안다면 더 빠르다

코틀린은 자바와 100% 호환되기 때문에, 자바 경험이 있으면 적응이 매우 빠릅니다. 같은 일을 더 적은 코드로 처리하는 '확장 함수', 널 안정성, 데이터 클래스 같은 기능이 일상적인 불편을 줄여줍니다. 기존 자바 프로젝트에 코틀린 파일을 섞어 점진적으로 전환할 수 있다는 점도 큰 장점입니다.

안드로이드 그 너머

코틀린은 안드로이드의 공식 언어이지만, 쓰임새는 점점 넓어지고 있습니다. 서버 쪽에서는 Ktor나 스프링과 함께 백엔드를 만들 수 있고, 코틀린 멀티플랫폼으로 iOS와 코드를 공유하려는 시도도 늘고 있습니다. 모바일을 시작점으로 삼되, 한 언어로 영역을 넓혀갈 수 있다는 점이 매력입니다.