일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 코루틴
- 안드로이드 테스트코드
- coroutine
- 스타트업 코딩테스트
- sharedFlow
- 안드로이드 JUnit
- 안드로이드 앱 아키텍처 가이드라인
- android clean architecture
- 안드로이드 리싸이클러뷰
- Hilt
- 안드로이드 mvvm
- 안드로이드 hilt
- android memory leak
- 안드로이드 아키텍처 컴포넌트
- 안드로이드 mvvm예제
- MVVM
- Koin
- 안드로이드 Espresso
- 안드로이드 Mockito
- RxJava
- Android App Architecture Guideline
- Android MVVM
- 안드로이드 앱 아키텍처 가이드라인 사용법
- 안드로이드 최적화
- 리싸이클러뷰 최적화
- android DI
- 안드로이드 앱 아키텍처 가이드라인 예시
- 안드로이드 앱 아키텍처 가이드라인 설명
- 안드로이드 의존성주입
- 안드로이드 클린 아키텍처
- Today
- Total
목록안드로이드 연구소/의존성주입 (4)
안드로이드 연구소
지난 예제에서 Flow라이브러리에 대해서 알아보았습니다. Flow는 데이터 스트림속에서 변경 사항을 감지한 후 다양한 연산자(map, filter, take)와 같은 연산자들을 이용하여 원하는 조건에 맞게 데이터를 가져오기 위해 사용하였습니다. 이를 반응형 프로그래밍(Reactive Programming)이라고 합니다. Flow(코루틴)가 등장하기 이전에는 RxJava라는 것을 이용하여 반응형 프로그래밍 작업을 하였다고 합니다. 그렇다면 RxJava에 대해서 한번 자세히 알아보도록 하겠습니다. Q1. ChatGPT, RxJava는 언제 만들어졌는가? 2012년에 Microsoft에서 ReactiveX 프로젝트가 시작했습니다. 그리고 RxJava는 2013년 Netflix에서 ReactiveX(Reacti..
지난 번 의존성 주입 첫번째 포스터에서 의존성 주입(DI)이 뭔지 알아보았고 의존성 주입 두번째 포스터에서 안드로이드 의존성 주입(DI)라이브러리 2가지 Dagger와 Hilt를 알아보았습니다. 그렇다면 오늘 마지막 의존성 주입(DI)라이브러리 코인에 대해서 알아보겠습니다. Q1. Koin에 대해서 설명해줘. Koin은 JetBrains에서 개발한 Kotlin용 경량 의존성 주입 프레임워크입니다. 안드로이드 앱 뿐만 아니라 Kotlin 애플리케이션의 의존성을 관리하는 간단하고 실용적인 방법을 제공합니다. DI 구현하는 간단하고 실용적이며 낮은 러닝커브로 쉽게 사용할 수 있도록 하는 것을 목표로 합니다. Koin의 특징으로는 아래와 같이 있습니다. 1. DSL 선언 Koin은 DSL(Domain-Speci..
지난번에 포스트에서 의존중인 코드가 어떤것들인지, 의존중이 코드를 없애기위해 어떻게 3가지 방법으로 의존성을 주입하였는지(Dagger, Hilt, Koin아님), 가장 손쉽게 의존성을 주입한 3번째 방법을 하기위해 어떤 라이브러리들이 있었는지(Dagger, Hilt, Koin맞음) 알아보았습니다. 그렇다면 오늘 이 라이브러리들 사용법에 대해서 알아보겠습니다. 첫번째는 바로 Dagger입니다. 앞전의 의존성에 문제가 있었던 예제를 Dagger를 사용하면 어떻게 해결할 수 있는지 확인해볼까요? class UserViewModel : ViewModel() { private val userRepository = UserRepository() // using userReposiroty instance ... } ..
지난 챕터2에서 MVVM만들기 시리즈에서 안드로이드 아키텍처 컴포넌트에 대해서 알아보았습니다. 오늘부터 "챕터3 안드로이드 테스트 코드"를 시작해보겠습니다. 지난 챕터2에서도 ViewModel이나 Lifecycle들을 사용하면 "테스트를 잘 할 수 있도록 하였다."라는 말들을 종종하였는데 그렇다면 이제 어떻게 애플리케이션에서 테스트를 할 수 있는지를 보겠습니다. 그전에 테스트를 잘 할 수 있도록 세팅 하기위해서 "의존성 주입 라이브러리"에 대해서 배워볼 예정입니다. 이전에 배웠던 ViewModel이나 Lifecycle 테스트를 잘 할 수 있도록 한 까닭은 무엇일까요? 그건 바로 기능별로 클래스를 분리해놓았기 때문입니다. "정확하게는 UI로직과 비즈니스로직을 분리하였다"라고 하는데요. 이는 UI로직과 비..