코틀린 (Kotlin)

여러 예제를 통해 Kotlin에 대해서 소개해드립니다.


2020

[Kotlin/코틀린] data class 와 equals, hashCode, toString
[Kotlin/코틀린] data class 와 equals, hashCode, toString

처음 자바를 배울 때는 C언어나 C++ 보다는 훨씬 편하고 쉽다고 생각했습니다. 그런데 요즘에 코틀린으로 개발을 하기 시작했는데, 제가 머릿속으로 생각한 로직이 정말 간단하게 표현할 수 있는 언어라고 느꼈습니다. 오늘은 그 중 java에서는 추가적인 코드를 작성해야하는 equals, hashCode, toString 을 kotlin에서는 어떻게 간단하게 작성할 수 있는지에 대해서 알아보겠습니다.

[Kotlin/코틀린] List to Set, List to Map
[Kotlin/코틀린] List to Set, List to Map

보통 리스트의 내의 값들 중, 중복되지 않는 셋을 만들고 싶거나, 리스트의 특정 프로퍼티를 기준으로 맵을 만들어야하는 경우가 종종 있습니다. 오늘은 자주 사용하게되는 리스트를 셋이나 맵으로 변경하는 방법에 대해서 소개해드리도록 하겠습니다.

[Kotlin/코틀린] Coroutines Multithreading
[Kotlin/코틀린] Coroutines Multithreading

Java를 사용하던 시절에는 멀티 스레드를 이용한 병렬 프로그래밍은 조심해서 사용해야합니다. 자칫 잘못해서 성능이 떨어질 수도 있고, 의도하지 않은 대로 동작하는 경우가 많습니다. 하지만 코틀린에서는 Coroutines라는 라이브러리를 통해서 멀티스레딩을 간단하면서도 컨트롤 하기 쉽도록 해줍니다.

[Kotlin/코틀린] List GroupBy (리스트 그룹핑)
[Kotlin/코틀린] List GroupBy (리스트 그룹핑)

자바 및 코틀린의 리스트 그룹화하는 방법에 대해서 알아보려고 합니다. 자바의 경우, lambda를 이용하여 간단하게 필요한 데이터를 가공할 수 있습니다. 또한 코틀린에서는 더욱 간단하게 표현할 수 있습니다.

[Kotlin/코틀린] Kotlin - Nullable
[Kotlin/코틀린] Kotlin - Nullable

Java에서 일반적으로 NullPointException은 런타임에 발생하는 예외입니다. 그래서 NullPointException을 피하기 위해 Null 검사를 하거나 Null Object Pattern 등을 사용하곤 하는데요, 하지만 Kotlin에서는 Type System에서 Null을 관리 하도록 설계되어 있습니다.