본문 바로가기

Android/Kotlin11

Kotlin - Sealed Class Kotlin에는 sealed class라는 것이 있다. 이를 이용하여 콘크리트 타입으로 추상 클래스를 확장하여 쓸 수 있다. Swift에서는 enum을 좀 더 강력하게 사용할 수 있는데, 이번 글에서는 sealed class를 이용하여 Kotlin에서도 비슷한 작업을 편하게 할 수 있는 것에 대해 알아볼 것이다. [Swift] 먼저, Swift를 잠시 살펴보면 Swift에서는 이런 식으로 enum 안에 각각 다른 필요한 여러 타입들을 받아서 사용할 수 있도록 선언이 가능하다. 같은 음식 타입이지만 음식에 따라 담고 있는 정보가 다를 수 있다. [Kotlin] Kotlin에서는 sealed class를 이용하여 위와 같이 사용할 수 있다. 이게 어떨 때 편리한지, 어떻게 사용하는지는 다음의 활용 예시를 통.. 2020. 5. 21.
Kotlin : run, with, let, also and apply Scoping Function Kotlin의 scoping function들에 대해 정리해보려고 한다. scoping function은 다음과 같이 6가지 종류가 있다. `run`, `with`, `T.run`, `T.let`, `T.also`, `T.apply` Scoping Function - "run" [예시 코드 1] [실행 결과 1] `run`을 이용해서 함수의 scope 안에서 새로운 scope를 만들어서 사용할 수 있다. 당연히 `run` scope의 상위 scope에 있는 값들을 사용할 수 있고, 안에서 새로 만들어서 사용할 수도 있다. scope가 새로 생긴 것이기 때문에 변수 이름을 중첩하여도 에러가 발생하지는 않는다. 반복문 등 어떠한 scope 안에서 생성한 값들은 해당 scope .. 2020. 5. 17.
IntelliJ에서 RxKotlin 사용하는 방법 IntelliJ 프로젝트 생성 먼저, IntelliJ에서 새 프로젝트를 생성한다. Gradle Project로 생성해줘야 하기 때문에 왼쪽에서 Gradle을 선택하고, 오른쪽에서 Java와 Kotlin/JVM을 체크하고 Next를 누른다. 다른 IntelliJ 프로젝트를 만들 때와 동일하게 프로젝트의 이름과 경로 정도만 설정해 주고 Finish를 선택한다. 프로젝트를 생성하고 나면 혼자서 Gradle Build가 진행이 될텐데 이 작업이 끝날 때까지 잠시 기다린다. 자동으로 src 폴더가 생기는 설정을 하지 않았다면 프로젝트 밑에 src 디렉토리가 따로 없을 것이다. 디렉토리를 만들기 위해 프로젝트 최상단 폴더를 우클릭 - New - Directory 를 선택한다. 새 디렉토리의 이름을 입력하면 되는데,.. 2020. 5. 14.
Android Kotlin Coroutines 사용하기 기존에는 async task를 하기 위해서 스레드, 실행, 콜백 등을 구현했다. 물론 이를 구현하는 데 있어서 큰 불편함은 없지만 코드를 많이 짜야 하고 지저분해지기가 쉽다. 특히나 콜백을 많이 사용하면 코드를 볼 때 이해하는 데에도 시간이 많이 걸리게 될 수 있다. Kotlin에서는 Coroutines(코루틴)을 사용하여 async task(비동기 작업)를 편하게 할 수 있다. 이번 글에서는 Coroutine에 대해 알아볼 것이다. Coroutines (코루틴) Coroutine은 비동기 작업을 순차적으로 진행해주는 점에 있어서는 thread와 비슷한 개념이다. 비슷하지만 thread에 비해 더 가볍고 많은 기능이 있어서 더 좋다고 볼 수 있다. 유지 관리 면에 있어서도 훨씬 편하고 단일 쓰레드에서도 .. 2020. 5. 12.
IntelliJ IDEA - Kotlin Project 만들기 IntelliJ IDEA 프로그램을 이용해서 Kotlin Project를 만들고 실행하는 방법 먼저, IntelliJ IDEA를 실행했을 때의 처음 모습이다. 여기에서 오른쪽에 있는 "Create New Project"를 선택한다. "New Project" 화면에서는 왼쪽 탭의 Java를 선택하면 위의 화면과 같이 된다. 여기에서 Kotlin/JVM에 체크하고 밑에 있는 Next를 눌러 다음으로 진행한다. 그러면 다음으로 Project의 이름과 위치를 설정하는 화면이 나온다. 여기서 원하는 프로젝트의 이름과 경로를 설정해주면 된다. 경로는 그냥 기본 경로를 사용하고 프로젝트 이름만 설정하였다. 기본적으로 만들어져 있는 Kotlin 파일이 없을 텐데 프로젝트에 직접 추가해줘야 한다. Project 탭에서 .. 2020. 5. 4.