Backend/Kotlin

프로젝트에 Kotlin의 컨벤션을 지키기 위해 Ktlint를 사용해보기. 서론 최근 노마드 커뮤니티 사이드프로젝트를 진행하면서 학습 및 새로운 경험을 하기 위해 백엔드 언어를 Kotlin으로 채택하여, 개발을 시작하게 되었습니다. 현재는 1인 개발이지만, 초기에 컨벤션을 잘 지켜두기 위해 Ktlint를 적용한 이야기를 해보려고 합니다. ktlint란? An anti-bikeshedding Kotlin linter with built-in formatter. 포맷터가 내장된, 바이크셰이팅 방지용 코틀린 린터입니다. cf) Anti-bikeshedding이란? 사소함의 법칙이라고 불리우는, 영향력이 미미하거나 중요성이 없는 항목에 불균형적인 시간을 소비하는것을 말합니다. 즉, 작은 문제에 집착하면서 시간을 ..
1.9.0 언어 업데이트 release note What's new in Kotlin 1.9.0 | Kotlin Enum 클래스 entries 속성 values()의 함수를 entries라는 속성으로 대체하였습니다. values()의 단점은 호출할때마다 새로운 인스턴스를 매번 할당해야 하기 때문에 성능 문제로 이어질수 있다는 단점이 있습니다. 모든 호출마다 Mutable Array 복사본을 생성해 반환. 아울러 불변이 아니기 때문에, 수정이 가능한 부분이 있었습니다. enum class Direction { NORTH, SOUTH, EAST, WEST } fun main() { val directions = Direction.values() directions.forEach { println(it) } ..
Kotlin의 val vs var 🧐 Declaring properties 속성을 정의하는 방법으로 총 2개의 키워드가 있습니다. 바로 var 와 val 인데요. 두개의 키워드를 알아보겠습니다. 💎 val // kotlin class Person() { val name = "marco" } // java public final class Person { @NotNull private final String name = "marco"; @NotNull public final String getName() { return this.name; } } 위 코드에서 kotlin과 java에서의 값을 보면 val은 불변(immutable)이라는 것을 볼수 있으며, getter만 생성되는 것을 볼수 있습니다다. 🍰 ..
Seyun(Marco)
'Backend/Kotlin' 카테고리의 글 목록