개발자를 위한 코틀린 프로그래밍 A에서 Z까지

2017년 구글 I/O 행사에서 구글은 안드로이드 앱 구축을 위한 공식 프로그래밍 언어로 코틀린(Kotlin)을 발표했다. 이후 5년이 지난 현재 코틀린을 사랑하는 많은 개발자들에 의해서 안드로이드에서 많은 자리를 차지하고 있다.

코틀린은 intellj,pycharm 등 IDE 툴을 만든 젯브레인즈(jetbrains)에서 개발한 언어로 주로 서버와 안드로이드 앱 개발에 널리 사용되고 있다. 

지난해 안드로이드 개발자들이 얼마나 코틀린을 애용하는지 알 수 있는 지표가 공개됐다. 구글 플레이 상위 1000개 앱 중 80%가 코틀린 코드로 작성됐다. 특히 전문 안드로이드 개발자의 60% 이상이 현재 코틀린을 사용하고 있다.

구글에서 만든 Google Voice(구글 보이스), Nest(네스트), Google Shopping(구글 쇼핑) 등 70여 개의 앱들이 코틀린을 사용했다.

구글과 젯브레인즈(Jetbrains)의 든든한 지원 덕에 개발자는 물론이고, 기업에서도 코틀린을 적극 채택하고 있다. 실제로 코틀린 공식 웹사이트에 의하면 우버(Uber), 에버노트(Evernote), 핀터레스트(Pinterest)를 비롯한 수많은 기업이 자사 안드로이드 앱을 위해 코틀린을 채택했다

이처럼 코틀린 사랑 받는 이유는 자바와 호환도 잘되면서 실용적으로 간결하고 안전한 언어이기 때문이다.   

특히 안정성 경우 구글 플레이에서 직접 효과를 확인할 수 있었다. 코틀린을 도입한 앱에서 앱 사용자가 충돌을 경험한 사용자 수가 이전에 비해 10%나 줄어들었다.

자바를 대체할 수 있는 새로운 프로그래밍 언어다. 코틀린은 기존 자바 라이브러리나 프레임워크와 함께 잘 작동하며, 성능도 자바와 같은 수준으로 멀티 플랫폼이다. 

프로그래밍 기능으로는 ▲ Kotlin/JVM(자바 가상 머신 상에서 동작하는 자바앱, 안드로이드앱 개발), ▲ Kotlin/JS(자바스크립트에 의해 DB부터 서버, 클라이언트까지 다루는 풀스택 웹개발), ▲ Kotlin/Native(안드로이드와 IOS뿐만 아니라 임베티드, IoT 등 앱 개발) 등으로 자바가 실행되는 모든 곳에서 사용할 수 있다. 

코틀린 언어와 컴파일러, 라이브러리 및 코틀린과 관련된 모든 도구는 모두 오픈소스로 어떤 목적이든 무료로 사용할 수 있다.

“저는 빅데이터와 머신러닝, 딥러닝을 적용한 프로젝트를 수행하면서 파이썬, 스칼라 등의 언어를 사용해왔습니다. 하지만 앞으로 인공지능(AI) 서비스를 앱이나 백엔드 시스템에서 실행하려면 코틀린 언어가 필요합니다"

새 책 '개발자를 위한 코틀린 프로그래밍 A to Z'(잇플 출판) 저자 문용준는 “컴파일 언어뿐만 아니라 주피터 노트북 환경에서 스크립트 언어도 지원한다”며, “특히 코틀린 언어는 데이터 분석을 할 수 있는 모듈이 많아서 문법도 공부하고 데이터 분석도 같이 할 수 있어 좋다”고 설명했다.

코틀린 언어는 기본적으로 자바 지식이 있어야 한다. 하지만 이 책은 자바를 몰라도 쉽게 접할 수 있다. 모든 설명을 코틀린 기반으로 구성했다. 그러다 보니 설명이나 예제가 매끄럽지 못한 부분도 있어서 처음엔 다소 어려울지도 모르지만 익숙해지면 이해하기가 훨씬 더 편하다.

이 책을 통해 안드로이드, 백엔드 등 코틀린 세계에서 훌륭한 개발자로 성장하길 기대한다.

저자(문용준)은 평화은행 국민은행 한국IBM, LGCNS를 거쳐 현재 SK 주식회사 C&C에 재직 중이다. 패스트 켐퍼스 등 파이썬 강의, IITP 빅데이터 자문 및 심사평가위원, 한국 창의재단 소프트웨어 영재 교육 자문, 국민은행 인공지능을 활용한 상시감사 시스템 등 다양한 활동을 하고 있다. 

저서로는 ‘손에 잡히는 파이썬’ , ‘손에 잡히는 판다스’, ‘반드시 알아야 할 파이썬 입문 A to Z’, ‘한권으로 개발자가 알아야 할 파이썬 심화 A to Z’, ‘한권으로 데이터사이언스 입문 atoz’, ‘딥러닝 머신러닝을 위한 파이썬 넘파이’ 등이 있다.

김한비 기자 itnews@