먼저 최근에 프로그래머스 거의 문제 풀이글만 올리다 Kotlin에 대해 소개를 할까 생각이 들었다.
프로그래머스 문제를 해결하면서 필요한 메소드나 확장 함수 등을 사용하려고 할 때
나는 주로 코틀린 공식 홈페이지에서 Docs를 찾는 편인데 기본기가 모자라 가끔 알아볼 수 없는 것들이 몇 개 있기 때문이다.
위 제목은 내가 몇몇 회사를 지원하면서 직접 받은 질문 중 하나이기도 하다.
일단, 나는 안드로이드 직군을 희망하고 있는 상태이므로 안드로이드에서 코틀린을 사용할 때의 장점을 적어보려 한다.
시작해보겠다.
1. 가독성이 좋은 적은 코드 사용
이건... 딱히 설명이 구체적이지 않아 스킵...
2. 성숙한 언어와 환경(직역)
2011년에 만들어진 후, 코틀린은 언어뿐만 아니라 전체 생태계까지 지속적으로 개발해왔다고 한다.
그래서 속된 말로 짬이 있다는 뜻인 것 같다 ㅋㅋㅋ
3. Jetpack 라이브러리와 다른 라이브러리들 지원
존재하는 안드로이드 라이브러리에 코루틴, 확장 함수, 람다식, 파라미터 지정 등의 코틀린 언어 특징을 추가할 수 있다.
4. 자바와의 상호 운용성
모든 코드를 코틀린으로 migrate할 필요없이 코틀린을 자바와 함께 사용할 수 있다.
5. 멀티 플랫폼 개발 지원
iOS, 안드로이드, 백엔드, 웹 애플리케이션에도 코틀린을 사용할 수 있다고 한다.
제일 공감이 안되는 파트였는데 물론 내가 백엔드나 웹 애플리케이션, iOS 개발을 깊게 시도해보지 않아 그런 것 같다.
6. 코드 안전성
코틀린 컴파일러가 남아있는 에러를 찾아주고 코드를 안전하게 만들어 준단다.
내가 수업 시간에 배웠던 코틀린의 장점은 이렇게 포괄적인(?) 표현이 아니었는데 설명이 좀... 아쉽다
7. 쉬운 학습
특히 자바 개발자들에게 배우기 편하다.
8. 큰 커뮤니티
구글에 따르면 탑 1000개의 앱 중 60%이상이 코틀린을 사용 중이라고 한다.
개인적으로 커뮤니티가 크다곤 하지만 코틀린에 관련한 내용 몇 가지는 아직도 원하는 검색 결과가 없다.
'Language > Kotlin' 카테고리의 다른 글
Coroutines의 내부 동작 (0) | 2024.03.07 |
---|---|
Coroutines을 다른 스레드에서 실행하기 (0) | 2024.03.03 |
Blocking vs Suspending 차이점 (0) | 2024.03.01 |
Thread와 Coroutines 비교 (0) | 2024.02.22 |
Suspend function 짧은 소개 (0) | 2024.01.19 |