JEP's Diary

1.코틀린이란? 본문

Development/Kotlin

1.코틀린이란?

지으니88 2018. 8. 25. 23:40

1.코틀린이란?

코틀린은 젯브레인(JetBrains)에서 만든 언어로, 2016년에 정식 버전이 출시 되었다.

코틀린은 간결한 문법과 풍부한 기능, 높은 안정성을 토대로 높은 생산성을 보장하는 것을 목표로 개발되었고, 자바와 100%호환된다.



코틀린의 특징

- 간결한 문법

: 문장 끝에 세미콜론(;)이 없다.

: new 키워드를 쓰지 않고 객체를 생성한다.

: 타입 추론을 지원하므로 보통 타입을 적지 않아도 된다.


- 널 안전성

: 객체 타입의 변수에서 널 값 허용 여부를 구분하며, 널 값의 허용 여부를 컴파일 단계에서 검사하므로 런타임에서 발생하는 오류를 줄일 수 있다.


- 가변/불변 구분

: 변수의 값에 대해 가변/불변 여부를 구분한다. 또는 컬렉션 자료형에 대해서도 가변/불변 여부를 구분한다.

: val(value)은 값을 한번 할당하고 나면 그 후에 변경 할 수 없다. 자바에서 final 키워드를 붙인 변수와 동일하다

: var(variable)은 할당된 값을 변경 할 수 있다.


- 람다표현식 지원


- 스트림 API 지원 


- 완벽한 자바 호환성


코틀린의 주요 문법

- 값 및 변수 선언

: 이름을 먼저 적고 타입을 적는다.

1
2
3
val a : String = "Hello"
 
val b = "Hello"
cs


- 함수 선언

: 반환 타입을 뒤에 적는다.

1
2
3
4
5
6
fun greet(name: String) {
}
 
fun sum(a: Int, b: Int) : Int {
    return a+b
}
cs


- 클래스 및 인터페이스 선언

: 자바와 비슷하다.

1
2
3
4
5
6
7
8
9
10
class Foo {
    val foo: String = "foo"
 
    fun foo() {
    }
}
 
interface Bar {
    fun bar()
}
cs


- 조건문

: If-else문은 자바와 사용방법이 같다.

: when문은 자바의 switch와 동일한 역할을 한다.


- 반복문

: for-each문을 사용한다.

: while문은 자바와 사용방법이 같다.

1
2
3
4
val items = listOf("foo""bar""baz")
for (item in items) {
 
}

cs




참고 : 차세대 안드로이드 개발자를 위한 커니의 코틀린