최근 포스트

[Android] 의존성 주입

2 분 소요

Dependency injection(의존성 주입)이 무엇일까? 그리고 왜 사용될까? 먼저 아래의 코드를 보자. 아래의 코드를 보면 db와 codecs가 의존성 주입 없이 곧바로 생성되고 있다. 만약 MusicPlayer 객체를 테스트한다고 생각해보자. db, codecs 변수들 ...

[Kotlin] sealed class

3 분 소요

Kotlin의 sealed class는 계층 구조를 안전하게 만들어준다. 즉, sealed class에 상속된 sub class들이 무엇이 있는 지 컴파일 타임에 알 수 있다. 이 말이 무슨 뜻일지 파헤쳐보자.

[Android] MVC, MVP, MVVM, MVI

6 분 소요

안드로이드의 주요 디자인 패턴에는 MVC, MVP, MVVM, MVI 등이 존재한다. 각각의 특징 및 장단점을 비교해보겠다.