언어(Language)/Kotlin

[Kotlin] 1. 코틀린이란 무엇일까? (코틀린의 특징 및 개발 환경 구축)

잇트루 2022. 6. 27. 10:00
반응형

코틀린(Kotlin) 언어는 JetBrains에서 풀스택 웹 개발, Android와 iOS, 임베디드, IoT 등의 다양한 플랫폼에서 개발할 수 있도록 하기 위해 개발한 언어입니다. 즉, 크로스 플랫폼  프로그래밍 언어라 할 수 있습니다.

 

현재 코틀린은 게시글 작성 기준으로 1.7.0 버전과 새로운 K2 컴파일러 알파 버전이 공개된 상태이며 K2는 기존 컴파일러보다 2배 이상 향상된 성능과 개발 속도 향상을 위한 여러 개선된 기능을 제공하고 있습니다.

 

코틀린 공식 홈페이지: https://kotlinlang.org/

 

Kotlin Programming Language

 

kotlinlang.org

 

코틀린의 특징

1. 구글에서 지정한 안드로이드 공식 언어로 모바일 개발에 뛰어난 퍼포먼스를 자랑하고 있습니다.

2. 함수형 프로그래밍 기법과 객체지향 프로그래밍 기법을 제공하는 멀티 패러다임 언어입니다.

3. 자바와 100% 호환성을 자랑하고 있으며, 자바에서 제공하는 라이브러리를 그대로 사용할 수 있습니다.

4. 코드가 간결하며 자바와는 다르게 문장 끝에 세미콜론을 사용하지 않아도 정상 작동됩니다.

5. 변수 선언시 Nullable과 NotNull 기능을 제공하여 널 포인터로 인한 프로그램의 중단을 예방할 수 있습니다.

 

지원하는 플랫폼

- Kotlin/JVM: 자바 가상 머신 상에서 동작하는 앱(안드로이드) 개발 지원

- Kotlin/JS: 자바스크립트를 통한 브라우저에서 동작하는 앱 개발 지원

- Kotlin/Native: LLVM 기반(ARM, x86 등) 네이티브 컴파일을 지원하여 여러 타깃의 앱 개발 지원

 

Kotlin/Native에서의 타깃은 안드로이드, 윈도우, 리눅스, 웹 어셈블리, iOS, MacOS 등을 뜻합니다.

 

개발 환경 구축

1. JDK 설치

코틀린 언어는 JVM에서 실행하기 때문에 자바 JDK를 설치해야 합니다. 그로인해 기존 자바와 상호작용할 수 있으며 자바에서 제공하는 라이브러리를 그대로 사용할 수 있습니다.

 

JDK는 대표적으로 Oracle JDK와 OpenJDK가 있습니다.

 

Oracle JDK의 경우 보안 업데이트를 지속적으로 제공하나 기본적으로 유료 구독형 라이센스입니다. 하지만 비상업적인 용도에 한해서는 무료 사용이 가능합니다.

Oracle JDK 다운로드 링크: https://www.oracle.com/java/technologies/downloads/

 

OpenJDK는 자바 SE의 무료 오픈 소스 구현체로 Oracle JDK와는 기술적으로 큰 차이는 없으나 성능 이슈가 존재하기도 합니다.

OpenJDK 다운로드 링크: https://jdk.java.net/

 

그 외 OpenJDK 기반의 무료 배포판인 Zulu JDK도 있습니다.

Zulu JDK 다운로드 링크: https://www.azul.com/downloads/?package=jdk 

 

2. 통합 개발 환경(IDE) 설치

JDK 설치 이후 직접 코드를 작성할 수 있는 환경인 IDE를 설치해야 합니다. VSCode, Eclipse, Android Studio 등 여러 IDE가 존재합니다. 특정 IDE의 경우 플러그인을 따로 설치를 필요로 합니다. 개인적으로 앱 개발 용도로는 Android Studio, 학습 용도로는 IntelliJ IDEA를 추천드립니다.

 

Android Studio 다운로드 링크: https://developer.android.com/studio

IntelliJ IDEA 다운로드 링크: https://www.jetbrains.com/ko-kr/idea/download

 

3. 그 외 개발 환경

코틀린 공식 홈페이지에서 제공하는 프로그래밍 환경도 있습니다.

 

코틀린 공식 홈페이지 개발 환경 링크: https://play.kotlinlang.org/

 

Kotlin Playground: Edit, Run, Share Kotlin Code Online

 

play.kotlinlang.org

 

반응형