본문 바로가기
개발관련

Java / Kotlin의 차이

by MinChan-Youn 2021. 11. 18.

안녕하세요 챠니입니다!

 

Java와 Kotlin의 차이에 대해서 알아보겠습니다.

 

구글은 2017년 5월 Google I/O에서 코틀린(Kotlin)을 공식언어로 채택 -> 2019년 Google I/O에서 Kotlin First를 선언하며 Kotlin을 메인언어로 지원하고 있습니다.

 

Android Developer에서도 먼저 보여지는 언어가 Kotlin일 정도로 예전 Java에 대한 지원을 끊는것은 아니지만 그만큼 계속해서 Koltin에 대해 강조하고 있는것이 아닌가 싶다.

 

 *Java(객체지향 프로그래밍/ Object Oriented Programming): 클래스 디자인과 객체들의 관계를 중심으로 코드 작성이 이루어짐, 따라서 상태, 멤버변수, 메서드 등이 긴밀한 관계를 가지고 있다.

 *Kotlin(함수형 프로그래밍 / Funtional Programming): 값의 연산 및 결과 도출 중심으로 코드 작성이 이루어짐, 함수 내부에서 인자로 받은 값을 별도로 저장하지않고, 간결한 과정으로 처리하고 매핑하는데 주목적

 

 

그렇다면 Kotlin의 함수형 프로그래밍 Funtional Programming에 대해서 알아보자

 

장점:

- 변수와 상수: Java는 상수를 final을 통해서 선언 / Kotlin은 val로 선언(변수 var)

- view의 사용: Java는 findViewById로 접근 / Kotlin은 id로 바로접근 및 ViewBindingd을 통해 접근가능

- Null의 안전성: Java는 @Nullable / Kotlin은 간편하게 변수명뒤에 ?를 붙여줌으로써 null가능

-객체초기화: Kotlin은 apply를 통하여 명시없이 바로 객체함수 사용가능

- Data class: Java는 변수선언 get, set을 모두 선언해주어야함 / Kotlin은 변수 선언이 바로 get, set을 모두 포함

 

단점:

Kotlin을 Clean build시 시간이 보통의 1.3배정도 시간 소요