Editor’s Note
2019년, 구글은 코틀린이 안드로이드 앱 개발의 첫 번째 언어임을 공식화했습니다. 이 흐름에 따라 코틀린을 사용하는 현직 개발자들도 점차 많아지면서 그 성장세가 가속화되고 있습니다. 그렇다면 코틀린, 왜 다들 선택하는 걸까요? 오늘은 여러분이 코틀린을 배워야 하는 이유를 자세히 살펴보겠습니다.
✍️3줄 요약
- 코틀린은 안드로이드 앱 개발의 신생 언어로, 자바와 완벽하게 호환됩니다.
- 코틀린은 간결하며 직관적이고, NPE(프로그램 실행 중 에러 메세지)를 방지하며 확장성이 좋습니다.
- 자바를 사용하던 개발자들도 코틀린으로 넘어가는 추세이며, 코틀린 개발자를 채용하는 기업이 점차 증가하고 있습니다.
코틀린이란?
코틀린(Kotlin)은 자바의 사용성을 개선한 신생 개발 언어입니다. 자바 IDE(통합개발환경) 개발사 젯브레인스(JetBrains)에서 2011년 공개, 2016년 2월에 첫 번째 공식 버전을 출시했습니다. 기존 안드로이드 언어인 자바와 100% 호환이 가능하여 자바의 라이브러리를 그대로 사용할 수 있는 언어입니다. 구글이 2019년에 코틀린을 공식적으로 안드로이드 개발을 위한 메인 언어로 지정하면서 본격적으로 주목을 받기 시작했습니다.
왜 구글은 잘 쓰고 있던 자바에서 코틀린으로 공식 언어를 변경했을까요? 오라클과 구글의 자바 저작권 분쟁 때문입니다. 오라클이 자바를 개발한 선마이크로시스템즈를 인수하며 구글이 안드로이드에서 자바 API를 사용하는 것에 대해 저작권 침해를 주장했습니다. 구글은 자바를 대체할 주요 언어를 다수 물색하기 시작했고, 그 중 코틀린이 공식 1순위 프로그래밍 언어로 선택되었습니다.
이를 시작으로 많은 개발자들과 기업들도 코틀린을 채택했습니다. 대표적으로 메타(Meta) 또한 페이스북, 인스타그램, 메신저 등의 안드로이드 앱 코드를 자바에서 코틀린으로 전환하고 있다는 것을 밝혔습니다. 코틀린의 조사에 따르면, 전문 안드로이드 개발자 중 50% 이상이 코틀린을 기본 언어로 사용하고 있다고 합니다.
코틀린을 배워야 하는 이유
1. 간결하고 직관적
코드는 간결하고 이해하기 쉬워야 개발자의 생산성을 최적화할 수 있습니다. 코틀린은 의도를 파악하기 쉬운 구문을 제공하며, 준비 코드가 적어서 개발자의 시간과 노력을 절약할 수 있는 언어입니다.
- 다양한 라이브러리 제공: 반복되거나 길어질 수 있는 코드를 라이브러리 함수 호출로 대체합니다.
- 함수형 프로그래밍: 함수형 프로그래밍으로 실행 속도를 저하시키지 않고 프로그램을 구현합니다. 대표적인 기능이 람다 표현식인데요. ‘람다’란 다른 함수에 값처럼 전달할 수 있는 작은 코드 조각입니다. 코드를 간결하게 만들고, 지연 연산으로 성능을 높이며, 반복 코드 같은 불필요한 부분들을 제거할 수 있죠. 자바의 업그레이드 버전인 자바8에서도 람다를 추가하고 사용할 수 있지만, 더 많은 객체가 필요하여 저가형 안드로이드 기기의 성능에 부정적인 영향을 미칠 위험이 있습니다.
2. Null 안정성 (Null Safe 언어)
프로그래밍 언어에서 null은 ‘빈 값’, 즉 변수에 아무것도 할당되지 않은 상태로 주소값이 없는 것을 의미합니다. 코틀린은 null로 인해 잘 작동하던 프로그램이 실행 중 갑자기 멈추는 에러, NPE(프로그램 실행 중 에러 메세지)를 방지할 수 있습니다. NPE는 ‘개발자들의 영원한 숙제’라고도 불릴 정도로 개발자를 고통받게 하는 존재인데요. 자바는 함수의 값이 null일 때, 에러를 감지하지 못하여 예방하기 어렵기 때문입니다.
그러나 코틀린은 컴파일러가 에러를 인식할 수 있습니다. 연산자 물음표(’?’)가 존재해서, 자료형 끝에 물음표(’?’)를 붙여 선언하는 경우에만 컴파일러가 null을 허용하는 방식을 사용하기 때문에 NPE를 발생시키는 현상을 줄이고 안전하게 프로그램을 구현할 수 있습니다.
3. 자바와의 상호운용성
코틀린은 자바와 완벽하게 호환 가능하여 기존 자바 라이브러리를 그대로 사용하거나 자바와 코틀린 코드를 섞어서 쓸 수 있습니다. 또한 다중 언어 프로젝트 기능으로 소스 파일이 섞여 있더라도 제대로 프로그램을 불러올 수 있는 언어입니다.
4. 언어의 확장성
코틀린은 백엔드 개발에도 쓰이는 언어입니다. 코틀린을 배워 놓으면, 추후 백엔드 개발까지 영역을 넓힐 수 있습니다. 최근 카카오, 당근마켓, 토스 등 다수의 기업에서 백엔드 기술 스택으로 코틀린을 도입하고, 백엔드 개발에서 우세했던 자바와 스프링 프레임워크의 조합에 추가로 코틀린을 도입하는 '코프링' 조합도 점차 증가하고 있습니다.
코틀린 vs 자바 핵심 비교
ㅤ | 코틀린 | 자바 |
문법 | 간결하고 직관적인 언어 | 복잡함:
부수적인 언어 요소가 많음 |
처리 속도 | 느림:
빌드와 컴파일 시간이 자바보다 오래 걸림 | 빠름 |
null 안전성 | 좋음:
컴파일러가 에러 인식 | null 처리가 어려움 |
자원 | 한정적:
신생 언어 | 풍부함:
많은 개발자들이 오랫동안 사용한 언어로
대규모 커뮤니티 형성 |
코틀린 채용 시장 현주소와 전망
국내 취업 시장 트렌드
자바가 독식하던 채용 시장에서 코틀린이 점점 두각을 드러내고 있습니다. 기술스택 사이트 코드너리에 따르면, 한국 기업 중 140개의 기업이 코틀린을 사용하고 있는데요. 백엔드 채용과 같이 추산된 결과이지만, 채용 시장의 움직임과 구글의 전폭적인 지원으로 보았을 때 안드로이드 앱 개발에서 코틀린의 전망 또한 밝을 것으로 예상됩니다.
글로벌 트렌드
코틀린의 인기는 세계적으로도 점차 상승하고 있습니다. 2024년 3월 티오베 지수 기준, 코틀린은 19위를 기록하며 전년 대비 16위 상승했습니다. 그에 비해 자바는 1계단 하락하며 그 위세가 약화되고 있는 것을 확인할 수 있습니다. 티오베 지수는 네덜란드의 소프트웨어 기업 '티오베'가 매월 발표하는 프로그래밍 언어 순위로, 구글, 아마존, 위키피디아 등을 포함한 20개 이상의 검색 엔진에서 얻은 프로그래밍 언어 검색 수치와 개발자 수 등을 기반으로 산정됩니다. 즉, 코틀린의 상승하는 티오베 지수는 그만큼 개발자들 사이에서 인기가 많아지고 있다는 뜻인데요. 이와 같은 추세로 코틀린을 사용하는 개발자 수가 많아지면, 자바처럼 대규모 커뮤니티가 형성되어 코틀린 생태계가 더욱 확장될 것으로 보입니다.
코틀린은 자바의 불편함을 개선하는 데 집중한 ‘개발자 친화적’인 언어입니다. 코틀린이 점점 대중화되는 이유는 구글의 전폭적인 지원뿐만 아니라 코틀린 자체의 실용성이 현직 개발자들의 생산성이 코틀린 이전과 비교하기 어려울 정도로 향상되었기 때문이 아닐까요?
이 글을 보는 분들이라면 IT 취업에 도전하고 계실텐데요. 취업 준비가 막막하다면 내일배움캠프에서 제공하는 취업 3종 패키지 무료로 받고 고민 해결해보세요! 카카오톡 플러스친구 추가하시면 개발자 로드맵, 포트폴리오 구성 방법, 이력서 작성 꿀팁과 탬플릿까지 무료로 다운받으실 수 있습니다.
내일배움캠프에서 경쟁력 있는 앱 개발자로 거듭나세요
내일배움캠프는 독보적인 커리큘럼으로 앱 개발부터 출시까지 경험하며 차별화된 포트폴리오를 만들고 있습니다. 업계 트렌드와 전문성을 갖춘 운영진이 이력서 작성부터 자체 채용 플랫폼, 면접까지 전 운영진이 열과 성을 다해 수강생의 취업까지 함께하고 있습니다. 내일배움캠프와 함께 앱 개발자의 꿈을 이뤄보세요.
참고자료
CREDIT
글 | 정효재 팀스파르타 에디터
취업 준비, 어디서부터 시작해야 할지 모르겠다면?
🧐비전공자인데 IT 업계 취업할 수 있을까?
😟프로젝트 경험이 부족한데, 어떻게 준비해야 할까?
🥺IT 기업으로 이직하고 싶은데 뭐부터 시작해야 할까?
이런 고민을 하고 있다면, 내일배움캠프의 IT 취업 컨설팅을 받아보세요.
취업 코칭 전문가들이 여러분의 고민을 해결해 드립니다.
다음 링크에 이메일을 입력하시면 메일로 1:1 커리어 상담권과 취준 자료집을 보내드릴게요.
Share article
Subscribe to our newsletter