본문 바로가기

IT관련 정보

JAVA 와 KOTLIN의 차이점에 대해 알아보자

자바는 평소에 많이 사용했기 때문에 익숙했지만 코틀린은 들어보기만 했지 써보지 않았다.

그래서 오늘은 자바와 코틀린의 차이점에 대해 알아보려고 한다.

 

출처: https://medium.com/codex/kotlin-vs-java-for-android-development-7cce3e90ed08

1. 문법 간결성

-Java: Java는 상대적으로 문법이 더 복잡하고 많은 코드를 필요로 한다. 특히 안드로이드에서는 UI 코드 작성을 위한 XML 파일과의 조합이 필요하다.

 

-Kotlin: Kotlin은 간결하고 읽기 쉬운 문법을 가지고 있다. 불필요한 보일러플레이트(단순노동) 코드를 줄일 수 있어 가독성이 좋다.

 

2. 널 안전성

-Java: Java에서는 null 포인터 예외(NullPointerException)가 자주 발생한다.

 

-Kotlin: Kotlin은 기본적으로 변수가 null일 수 있는지를 명시적으로 나타내야 하기 때문에 사전에 null포인터 예외를 방지할 수 있다.

 

3. 확장 함수

-Java: Java는 클래스에 메소드를 추가하기 위해서는 해당 클래스를 상속하거나 수정해야 한다.

 

-Kotlin: Kotlin은 확장 함수를 지원하여 외부에서 기존 클래스의 함수를 확장할 수 있다. 그렇기 때문에 기존 클래스의 수정 없이도 새로운 기능을 추가할 수 있게 해준다

 

4. 함수형 프로그래밍

-Java: Java 8부터 람다식과 스트림 API를 통해 함수형 프로그래밍 스타일을 했지만 여전히 Java의 문법은 객체 지향적인 특성이 강하다고 한다.

 

-Kotlin: Kotlin은 함수형 프로그래밍 스타일을 더욱 자연스럽게 지원한다. 람다식을 활용한 코드 작성이 쉽고 강력하다.

 

5. 상호 운용성

-Java: Java와 다른 JVM 언어 들과의 상호 운용성이 뛰어나다.

 

-Kotlin: Kotlin 100% Java와 상호 운용이 가능하고 기존 Java 코드를 Kotlin으로 변환하는 작업이 쉽다.

 

이런 이점 말고도 2019년 구글에서 코틀린을 안드로이드 1st언어로 지정했기 때문에 요즘에는 코틀린으로 많이 넘어가는 추세라고 한다.