책정리 43

[Kotlin] 클래스와 프로퍼티, Enum 클래스 - Java와 비교하기

[Kotlin] 클래스와 프로퍼티, Enum 클래스 - Java와 비교하기 클래스 코틀린에도 자바에 존재하는 클래스라는 개념이 존재한다 다른 부분은 클래스 선언 및 정의가 조금더 '간단' 하다는 점이다. class Person(val name: String, var age: Int, val address: String)과 같이 한 줄에 여러 필드를 선언할 수 있다. 프로퍼티 자바에서는 '필드'와 '접근자'를 묶어 프로퍼티라고 부른다. 코틀린에서는 프로퍼티를 기본 기능으로 제공하여 자바의 필드와 접근자 메소드를 완전히 대신한다. 자바에서는 게터와 세터를 제공해야 필드를 접근하고 변경할 수 있다. 코틀린에서는 값을 저장하기 위한 비공개 필드와 세터 및 게터 구현을 제공한다. class Person( val ..

[Kotlin] 함수와 변수 - Java와 비교하기

변수 코틀린에서는 크게 변경 가능한 변수와 변경 불가능한 변수가 있다. 변경 불가능한 변수 (val) 변경 불가능한 (immutalbe) 참조를 지정하는 변수다. 자바에서는 final에 해당한다. 변경 가능한 변수 (var) 변경 가능한 (mutalbe) 참조를 지정하는 변수다. 자바의 일반 변수에 해당한다. val age: Int = 24 // (1) val languages = arrayListOf("Korean", "English") // (2) languages.add("French") var name = "Boggling" name = 42 // (3) Error : type mismatch, 컴파일 오류 발생 1 'val' 변경 불가능한 변수 명시 Int 형 변수임을 명시 2 'val' 변경 ..

[Kotlin] 코틀린이란? 왜 코틀린을 사용할까?

코틀린이란 무엇일까? 코틀린은 정적 타입 프로그래밍 언어로 JVM 안에서 돌아갈 수 있는 JetBrains 사에서 만든 언어이다. 자바에 비해서 얻을 수 있는 장점은? 코틀린은 간결하다. 또한 좀 더 안전하다. 정적 타입 언어로 타입을 체크해주고, null pointer exception에 자유롭다. 또한 자바 언어와 100% 호환된다. 코틀린은 어떻게 작동할까? 코틀린도 자바와 마찬가지로 소스코드를 컴파일 하여 class 파일을 만들어낸다. 그러나 코틀린은 코틀린 런타임 라이브러리에 의존한다. 따라서 배포시에 런타임 라이브러리도 함께 배포해야한다. 코틀린은 함수형 프로그래밍 언어다. 함수형 프로그래밍 함수형 프로그래밍의 등장 명령형 프로그래밍일경우 복잡하게 엉켜있는 스파게티 코드를 유지보수하는 것이 매..