Kotlin 5

코틀린이 제공하는 자료형

목차코틀린은 원시 타입은 제공하지 않고 모든 자료형을 참조형으로 제공한다고 한다. 코틀린의 자료형 속도는?원시형은 성능적으로 참조형보다 유리하다. 하지만 코틀린은 원시형을 제공하지 않는다. 그렇다면 코틀린은 자바에 비해 느릴 수 밖에 없지 않을까? 하지만 코틀린에서 자료형을 아래처럼 저장하면 실제 내부적으로는 자바의 원시형 int를 사용한다고 한다.Long, Byte도 동일하게 자바의 원시형 타입을 사용한다.a: Int = 4java.lang.Class = int 단지 원시형을 한 번 감싼 형태로 제공하고 있으며 실제 성능적으로도 자바 원시형과 동일한 속도를 낸다고 한다.바이트 코드로 변환 후에도 확인해보면 자바의 원시형을 사용했을 때와 동일하게 컴파일 된다고 한다. 결론적으로 코틀린은 참조 자료형만 제..

Kotlin 2024.10.05

코틀린의 실행 과정

코틀린은 JVM에서 구동되고, JVM은 바이트코드로 변환된 .class 파일만 보기 때문에 코틀린이든 자바든 .class 파일로만 만들어주면 JVM에서 똑같이 실행된다고 한다. 소스 코드 작성코드를 작성하면 .kt 파일이 생성된다. 컴파일kotlinc Hello.kt 위 커맨드를 입력하면 HelloKt.class 라는 이름의 바이트 코드 파일을 만든다.jar파일로 만들면 실행가능한 상태가 된다.kotlinc HelloWorld.kt -include-runtime -d HelloWorld.jar 실행컴파일된 바이트코드는 JVM에서 실행가능해진다.자바와 마찬가지로 인터프리터 or JIT에 의해 실행 성능을 최적화하여 실행된다.  코틀린은 느릴까?실행과정에서 살펴봤듯이 바이트코드로만 만들어주면 JVM에서 어떤..

Kotlin 2024.10.03

코틀린의 기본 문법 정리

Hello Worldfun main() { println("Hello, World!")} 함수의 선언은 fun으로 한다.클래스를 반드시 선언할 필요가 없다.출력을 할 때 자바는 표준라이브러리를사용하지만 (sout) 코틀린은 println() 으로 짧게 제공한다. (내부적으로 System.out.println() 을 호출하고 있다) -> 코틀린에서 System.out.println()을 써도 문제없이 동작한다.세미콜론(;) 이 없다.변수의 종류val: 읽기 전용var: 수정 가능코틀린에서는 변경될 가능성이 없다면 읽기 전용 필드로 선언하는 것을 권장한다고 한다. 간단한 함수 예제제곱 구하기fun square(x: Int): Int { return x * x}fun main() { val result: In..

Kotlin 2024.10.03

Kotlin 이란

2011년 IntelliJ IDEA를 개발하면 JetBrains에서 JVM기반의 새로운 언어에 도전하였다.자바가 인도네시아의 섬이름에서 유래한 것에 착안해서 러시아의 섬이름을 따와서 코틀린으로 정했다고 한다. 문법이 간결하고 자바와의 호환성이 뛰어나 인기를 점점 끌기 시작했고, 구글이 안드로이드 개발을 위한 공식언어로 채택하면서 더욱 인기가 높아졌다고 한다. 그 동안 JVM 기반의 언어는 많이 등장했으나 자바의 아성을 위협하진 못했다고 한다.하지만 코틀린의 경우 백엔드 개발까지도 앞으로 자바를 뛰어넘는 JVM 기반의 주류 언어가 될 것이 확실시 되는 상황. 코틀린의 주요 특징실용성코틀린은 학교나 연구소의 연구를 위한 언어가 아닌 실무의 문제를 해결하기 위해 만든 언어이다.대규모 시스템을 개발해본 IT업계..

Kotlin 2024.10.03