1. 코틀린이란?
- JVM, 안드로이드, 자바스크립트 및 네이티브를 대상으로 하는 정적 타입 지정 언어
- 젯브레인즈에서 개발한 오픈 소스
- OO, FP 스타일 모두 가능
- 간결하고 실용적이며 안전하고 기존 언어와의 상호 운용성을 중시한다( + 코루틴 )
- java 이름의 유래를 오마주하여 kotlin도 섬이름을 따왔다.
2. 정적 타입 지정 언어
자바와 마찬가지로 코틀린은 정적 타입 지정 언어이다. 정적 타입 지정 언어란 프로그램 구성 요소의 타입을 컴파일 시점에 알 수 있어 프로그램 안에서 객체의 필드나 메서드를 사용할 때 마다 컴파일러가 타입을 검증해 준다.
즉, 실행하기 전에 컴파일러가 검증해 잘못됨을 감지하여 매우 효율적이다. 인텔리제이와 다르게 안드로이드 스튜디오는 백그라운드에서 컴파일러가 계속 돌면서 체크한다.
코틀린은 정적 타입 지정 언어로 만들어져 본래 kotlin/js, kotlin/native, kotlin/JVM 세가지 시장을 목적으로 출시 되었지만 현재는 JVM 시장만이 대표적으로 사용되고 있다. 웹은 kotlin/js 대신 타입스크립트가 자리 잡았으며 kotlin 2.0 이 어떻게 나오냐에 따라 kotlin/native의 성공 가능성이 결정될 것이다.
최근 백엔드 에서도 코틀린을 사용한 스프링(이른바 코프링)을 많이 적용하는 추세인데 서버와 안드로이드의 JVM 은 다른 JVM 이다.
3. 코틀린 기본
var x : Int = 1
var x = 1
-> 매개 변수 뒤에 그 매개 변수의 자료형을 쓴다.
-> 줄 끝에 세미콜론을 사용하지 않는다
fun main(){
println("Hello!")
}
-> 메소드를 클래스 안에서 정의해야 하는 자바와 달리 함수를 최상위 수준에 정의할 수 있다.
변수 선언 시 val 과 var을 사용하여 변수를 선언한다.
val : 값이 변경되지 않는 변수에 사용한다. (value)
var : 값이 변경될 수 있는 변수에 사용한다. (variable)
'우아한테크코스' 카테고리의 다른 글
로또 미션 피드백 : [우아한테크코스 5기 AN_베르] (0) | 2023.02.27 |
---|---|
TDD : [우아한테크코스 5기 AN_베르] (0) | 2023.02.15 |
Lv1 자동차 경주 미션 피드백 2 : [우아한테크코스 5기 AN_베르] (0) | 2023.02.14 |
Lv1 자동차 경주 미션 피드백 1 : [우아한테크코스 5기 AN_베르] (0) | 2023.02.13 |
OT : [우아한테크코스 5기 / 2023.02.07] (0) | 2023.02.07 |