Spring 개발하면서 Spring Data JPA를 사용하면 기본적으로 JpaRepository를 상속받아 Repository 인터페이스를 만들게 된다. 이 때, 기본 제공해주는 findById 를 사용하면 Optional 타입을 리턴받는다. Java 개발을 할 때면 기본 제공 메소드를 매번 구현할 필요가 없어서 굉장히 유용하게 사용하지만 Kotlin 에서도 그럴까? 아래 이어질 내용은 Kotlin에서 이 Optional 타입을 사용하는게 이상적인 형태인지를 고민해본 내용이다. Null은 kotlin의 친구다! kotlin 에서 Optional을 쓰면 안되나요? We use here the CrudRepository.findByIdOrNull Kotlin extension provided by defa..
nullable
이 글은 Kotlin In Action을 참고 하였습니다. 더욱 자세한 설명이나 예제는 직접 책을 구매하여 확인 하시기 바랍니다 코틀린에서는 자바보다 null 처리를 좀더 명확하게 합니다. 따라서 NPE(NullPointerException)가 발생하는 빈도를 현저히 낮출 수 있습니다. 6.1.1 null이 될수 있는 type 코틀린은 null이 될수 있는 type을 명시적으로 표시할 수 있습니다. //자바 public int getLen(String str) { return str.lengh(); } 자바에서 위 함수는 컴파일시 문제없이 빌드 되지만, run time에 인자로 null이 들어오면 NPE가 발생합니다. fun getLen(str: String) = str.length 코틀린에서는 명시적으..
코틀린 기본 문법 kotlin 기본 문법을 간략하게 파악 해보기 위한 요약 정리 입니다. kotlin 문법의 모든 내용을 다루지는 않지만 간략하게 훝어 보는 용도로 포스팅합니다. 변수 변수 선언 val name:String = "김찬정" // 읽기만 가능 var age:String = 20 // 읽기/쓰기 가능 var address = "서울" // 타입생략이 가능 name = "홍길동" // 컴파일 오류 age = 20 // 가능 Null 허용 변수와 Null을 허용하지 않는 변수 선언 // null 값 허용 변수 선언 var name: String? = null // null 값을 허용하지 않는 변수에 null을 선언 할 수 없다. var age: Int = null Null 체크 val name: ..