메뉴 건너띄기
상단메뉴 바로가기 본문 바로가기

Login Join

S W N E W S

[서포터즈 취재일기] 자바 대체재, 코틀린은 무엇인가?

  • 2019-12-27 15:18
  • |
  • SW마에스트로
[서포터즈 취재일기] 자바 대체재, 코틀린은 무엇인가?

안녕하세요! SW마에스트로 서포터즈 제3기 오예림, 김미연입니다. 여러분은 코틀린을 아시나요? C·자바·파이썬은 이미 많은 분들이 잘 알고 계시지만, 코틀린은 생소하신 분들이 많이 계실 거라 예상됩니다. 많은 개발자들은 코틀린‘떠오르는 자바 대체재’ , ‘조만간 자바를 압도할 언어’, ‘구글이 선택한 언어’라고 부르곤 한다는데요. 오늘은 바로 코틀린에 대해 들려드리고자 합니다.

코틀린(Kotlin)은 IntelliJ IDEA라는 통합 개발 환경으로 유명한 젯브레인즈에서 개발했습니다. 구글의 안드로이드 스튜디오도 InelliJ IDEA 기반이며, 2017년 5월 7일 이후로 안드로이드 앱 개발에서 코틀린 언어를 공식적으로 지원하고 있어서 구글이 선택한 언어로 불립니다.

배달의 민족의 우아한 형제들에서는 2017년 4월 배민 프레시에서 자바를 통한 안드로이드 개발에서 마주하는 문제점을 개선하고자 코틀린을 도입하는 메인 개편 프로젝트가 실시되었습니다.카카오 내부에서도 개발을 할 때 자바에서 코틀린으로의 이동이 이루어지고 있다고 합니다.

이처럼 많은 기업들이 코틀린을 선택하고 있는 것 같습니다. 그렇다면 코틀린은 어떤 장점이 있길래 많은 기업들에게 선택을 받고 있는 걸까요?

“자바와의 호환성이 좋다.”

코틀린은 쉽게 말해 자바 플랫폼에서 돌아가는 새로운 프로그래밍 언어입니다. 공식 사이트에서도 ‘100% interoperable with Java and Android’라고 소개할 정도로 코틀린과 자바의 호환성이 좋습니다.

코틀린을 사용할 때 기존 자바 코드를 작성하듯 이용할 수 있기 때문에 기존 안드로이드 라이브러리를 제약 없이 사용 가능합니다. 사실 자바가 사용되고 있는 모든 용도에 적합하면서도 간결하고 생산적이며 안전한 대체 언어를 제공하는 것이 코틀린의 주목적이라고 하네요!

“자료형 오류를 미리 잡을 수 있는 정적 언어이다.”

프로그램이 컴파일 될 때 자료형을 검사해 오류를 초기에 발견이 가능하다는 장점이 있습니다. 프로그래밍을 해보신 분들이라면 ‘널 포인터 예외 (NullPointerException)’를 경험해보셨을 텐데요. 프로그램 도중에 발생해 언제 어디서 오류가 발생했는지 알 수 없는 널 포인터 오류는 많은 개발자들의 골치 덩어리였습니다.

하지만 코틀린으로 개발을 한다면 널 포인터 예외를 예방할 수 있습니다. 변수를 선언하는 시점부터 그 변수의 특성을 고민하게 유도하기 때문에 보다 안전한 코드 작성이 가능합니다.

“아주 간결하고 효율적이며 세미콜론의 생략이 가능하다.”

코틀린의 첫인상은 군살을 뺀 자바입니다. 그만큼 코틀린은 여러 가지 생략된 표현이 가능한 언어라 무의미한 반복 없이 간결하고 효율적인 코딩이 가능하고, 코드를 작성할 때 줄 마지막에 사용하던 세미콜론을 생략할 수 있어서 간편합니다.

그렇다면 '코틀린'으로 개발한 안드로이드 애플리케이션은 무엇이 있을까요?

코틀린으로 개발한

애플리케이션

유용한 정보와 아이디어를 이미지로 검색해보는 ‘핀터레스트(Pinterest)’,

체크리스트와 메모장, 일기장을 정리해 놓는 ‘에버노트(Evernote)’,

라인 게임들이 정리되어 있는 ‘스퀘어(Square)’,

원하는 대로 구성하는 툴을 제공하는 ‘트렐로(Trello)’,

일정을 관리하고 학습을 위한 콘텐츠가 저장 가능한 ‘코세라(Cousera)’,

이런 여러 애플리케이션들이 모두 코틀린으로 개발되었습니다.

아직은 자바로 만든 안드로이드 애플리케이션이 많습니다. 하지만 구글이 2017 Google I/O에서 코틀린을 안드로이드 공식 언어로 발표한 이후 코틀린으로 만든 안드로이드 애플리케이션이 점점 더 많아지고 있습니다. 그만큼 코틀린이 개발자에게 인정받는 효율적인 언어라는 것이죠.

따라서 많은 사람들은 코틀린이 모바일 플랫폼 영역에서 자바를 압도할 것이란 분석을 하는데요. 코틀린의 빠른 성장을 예측하는 이유는 훨씬 더 현대적이고 자바보다 이해하기 쉽고 작성하기도 쉬우며, 진정으로 모바일을 염두에 두고 만들어진 것이기 때문이라고 합니다.

이처럼 코틀린은 배우기 쉽고 안정적이며 유지 보수가 쉬운 언어이기 때문에 주목을 받고 있습니다. 기존 자바와 호환을 유지하면서 쉽게 배울 수 있는 메리트가 있는데요. 여러분들도 코틀린을 배워두신다면 애플리케이션 개발에 있어서 굉장히 편리할 것 같습니다. 특히 자바를 알고 계신 분들은 훨씬 수월하게 배우실 수 있을 것 같습니다!

코틀린은 어떤 언어인지 아주 간단하게 소개해드렸습니다. 코틀린이 안드로이드 개발에 긍정적인 영향을 주는 언어임은 확실한데요. 코틀린이 완전한 자바 대체재가 될 수 있을지 관심을 가지고 지켜보겠습니다.