Kotlin 사용 환경 구축하기
앞으로 쓸 게시물은 쓰면서 Kotlin을 제가 Kotlin을 복습하는 겸 기초를 알리고자 쓰는 강좌입니다.
해당 강좌는 프로그래밍을 Kotlin으로 접하시는 분을 대상으로 합니다.
단, Java 기초 환경 (JDK 설치 등) 구축을 마쳤다는 가정을 하고 진행하며 Java 8 기준으로 작성합니다.
Kotlin?
Kotlin을 다뤄보기 전에 어떤 언어인지 간단하게 설명을 하고자 합니다.
Java 계열 IDE로 알려진 (제가 생각하기에) 대표적인 두 IDE, Eclipse와 Intellij IDEA가 있습니다.
Kotlin은 Intellij IDEA를 만든 회사, Jetbrains에서 제작한 프로그래밍 언어입니다.
Kotlin은 JVM, Javascript(Java와 완전히 다른 언어임!!), Native 분야로 나뉩니다.
(해당 글에서는 Kotlin JVM을 대상으로 하고 있으며 앞으로 말하는 Kotlin은 모두 Kotlin JVM입니다.)
Kotlin은 Java 하고 완벽히 호환이 되며 2017년 Kotlin이 Android의 공식 언어로 정하면서 Kotlin이 알려지는 계기가 됩니다.
JVM?
위에서 나온 JVM을 간략하게 알아보려고 합니다.
Java의 경우 JVM(Java Virtual Machine, 자바 가상 머신)이라는 가상 머신 위에 작동합니다.
사용자가 작성한 Java코드는 바이트코드로 변환되는데 최종적으로는 JVM 위에서 작동됩니다.
Java 말고도 Groovy, Scala, Kotlin(JVM) 등의 언어가 JVM 위에서 작동하게 되는데 이 중 하나가 바로 Kotlin JVM입니다.
IDE 설치하기
Kotlin을 사용하여 더욱더 편하게 개발하기 위해서 해당 글에서는 Intellij IDEA (IDE)를 사용하겠습니다.
(맥, 리눅스, 윈도우 모두 사용 가능!!)
Jetbrains Intellij IDEA : https://www.jetbrains.com/idea/download
Intellij IDEA(이하 인텔리제이)는 Community 버전과 Ultimate 버전으로 나뉩니다.
전자의 경우 무료, 후자는 유료인데 Kotlin을 배우기에는 전자의 버전도 괜찮으므로 Community 버전으로 설치해주시면 됩니다. (저는 Ultimate 버전을 쓰고 있는데 크게 차이는 없을 거 같고 학생 신분이라면 학생 인증을 통해 Jetbrains 제품군 모두 무료로 설치가 가능합니다.)
처음 설치 시 간단한 초기 설정 (테마, 플러그인 등등)을 하고 위와 같은 UI를 보게 됩니다.
추가)
Import Project를 통해 이클립스와 같은 타 IDE에서 작업하던 내용을 불러올 수 있으며 Open을 통해 기존 인텔리제이로 만든 프로젝트를 불러올 수 있습니다.
Create New Project를 눌러주시고 뜨는 창에서 Kotlin 선택하신 후 진행하시면 됩니다.
(최신 버전에서는 Kotlin/JVM이 아닌 JVM | IDEA로 표기되어 있습니다.)
이후 프로젝트 이름과 프로젝트가 저장될 경로 Project SDK, Kotlin runtime을 정해주시면 됩니다.
만약 Kotlin runtime 항목에 사진처럼 안 뜬다면 오른쪽 Create을 눌러 Use library from plugin을 눌러 추가해줍시다.
모든 단계를 거치면 위와 같은 화면이 뜨고 여기서 Kotlin을 시작할 수 있습니다!
(왼쪽 파일 구조가 사진과 다르다면 빨간색 칸을 눌러 Project로 설정하시면 됩니다.)
마무리
강좌를 많이 써보질 않아서 이해가 쉬울지 모르겠습니다.
오타나 잘못된 부분이 보이면 언제든지 알려주시고 피드백도 환영합니다.
감사합니다 :D
'개발' 카테고리의 다른 글
코틀린 Kotlin 다루기 (3) - Nullable, Non-Null (0) | 2019.05.27 |
---|---|
코틀린 Kotlin 다루기 (2) - 변수 (Variable), 자료형 (Data type) (0) | 2019.05.19 |
AirQualityTool 디자인 재작업 (0) | 2019.02.03 |
도커(Docker)가 뭐지? (0) | 2018.11.30 |
자바 Pair (0) | 2018.07.12 |