Kotlin

1. 코틀린의 탄생 배경

  • 러시아 상트페테르부르크 근처의 섬 이라고 함
  • 젯브레인의 안드레이 브레슬라프(andrey breslav) 라는 분이 개발팀을 구성하여 만들었다고 함
  • 기존의 주류 언어들보다 간결한 문법과 다양하고 실용적이고 사용하기 쉬운 언어를 지향

 

2. 핵심적인 특징

  • 코틀린은 Java 와 형태는 다르지만, 의미로는 유사한 문법을 가지고 있음
  • 구글이 코틀린을 안드로이드 개발 공식 언어로 지정
  • 코틀린을 백엔드, 프론트엔드, 모바일/안드로이드에서 사용할 수 있는 언어로 트랜스파일 할 수 있음
    • Java 바이트 코드, Javascript, IOS, MacOS, Linux, Windows, 웹어셈블리 등등
  • C 스타일의 프로시저 사용, Scala 스타일의 스크립트, Java와 같은 객체지향 코드, Smalltalk/Erlang과 같은 함수형 스타일을 사용할 수 있음
    • 코루틴(Coroutine), 컨티뉴에이션(Continuation)으로 비동기 프로그래밍 영역도 지원

 

그 밖에도 많은 특징들이 있다.

 

"적은 코드와 강력하고 트렌디한 언어"

 

코틀린을 표현하는 가장 짧은 단어인 것 같다.

 

3. 설치

 

Kotlin command-line compiler | Kotlin

 

kotlinlang.org

 

본인은 맥북을 사용하기에 아래와 같은 코드로 kotlin-cli 를 설치했다.

 

brew update
brew install kotlin

 

이후 설치하고 나서 버전 확인을 통해 설치 확인이 가능하다.

 

kotlinc-jvm -version

 

버전 확인

문법은 책보다는 매뉴얼을 보면서 습득하는게 더 빠를 것 같지만 예제 코드를 작성해보았다.

 

# Hello.kt

fun main() = println("Hello World")

 

이후 컴파일을 한다.

 

# Compile CMD

kotlinc-jvm Hello.kt -d Hello.jar

 

실행 방법은 아래와 같이 다양하게 설정하여 실행이 가능하다.

 

# Execute

java -classpath Hello.jar HelloKt
java -jar Hello.jar
kotlin -classpath Hello.jar HelloKt

## Windows ENV
```
java -classpath Hello.jar;"%KOTLIN_PATH%\lib\kotlin-stdlib.jar" HelloKt
```

## Unix-like ENV
```
java -classpath Hello.jar:"$KOTLIN_PATH/lib/kotlin-stdlib.jar" HelloKt
```

 

인자로 classpath 를 사용하려면 각 OS 환경에 맞게 환경 변수를 지정해주어야 한다.

환경변수 지정 후 윈도우는 %KOTLIN_PATH% 이고, 리눅스계열은 $KOTLIN_PATH 로 변수를 사용한다.

 

컴파일 없이 스크립트로도 실행이 가능하다. (마치 파이썬 처럼)

스크립트로 사용할 시, .kts 로 파일을 생성한다.

 

# listktsfiles.kts

java.io.File(".")
.walk()
.filter { file -> file.extension == "kts"}
.forEach { println(it) }

 

 

kotlinc-jvm -script listktsfiles.kts

 

결과 화면