[Kotlin] 왜 코틀린을 사용하는가?

승민·2022년 5월 9일
0

Kotlin

목록 보기
1/1

코틀린의 장점?

안드로이드 공부를 시작하면 자바와 코틀린이라는 두 가지 언어의 선택지를 만나게 된다. 나는 동아리에서 코틀린을 이용했기 때문에 자연스레 코틀린을 먼저 접하게 되었는데 딱히 이유는 알지 못했다. 코틀린이 대세다, 편하다 라는 얘기만 듣고 정작 왜 코틀린이 대세인지는 알지 못했다.

간결성(Concise)

  • getter, setter 등을 따로 선언해주지 않아도 된다.
  • 람다식이 간결하다.
  • filter를 이용해 배열을 반복문 없이 확인할 수 있다.
  • object class를 통해 싱글톤 패턴을 쉽게 구현할 수 있다.

안전성(Safety)

  • 변수에 null 처리를 못하기 때문에 null point exception이 발생하지 않는다.
  • null을 허용하려면 ? 키워드가 필요하다.
  • auto-cast를 지원한다.

auto-cast 지원 예시를 살펴보자.

fun calculateTotal(obj: Any){
	if(obj is Invoice)
    	obj.calculate()
}

위의 코드에서 obj에는 어떠한 형식이든 들어갈 수 있다.(코틀린에서 Any는 자바에서 최상위 클래스인 Object와 같은 개념이다) if문 안의 is는 타입을 확인하는 것으로 자바에서의 instanceOf 연산자와 같은 역할을 한다. 여기서 코틀린의 auto-cast가 일어난다. 코틀린은 타입이 맞는지 확인하는 순간 해당 타입이 맞으면 obj를 Any에서 Invoice타입으로 변형한다. 따라서 별도의 타입 변환 없이 obj.calculate()코드가 실행된다.

자바와의 상호호환(Interoperable)

  • 코틀린은 자바와 100% 상호호환이 된다. 자바 코드를 코틀린으로 변환할 수 있고 코틀린 코드를 자바로 변환할 수 있다. 실제로 안드로이드 스튜디오에서 자바 코드를 복붙하면 코틀린으로 변환시켜준다.

친화적이다(Tool-Friendly)

  • 자바에서 제공하는 툴을 모두 사용할 수 있고 더불어 코틀린만의 추가적인 툴들을 사용할 수 있다.
profile
안녕하세요 승민입니다

0개의 댓글