일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 병렬프로그래밍
- 안드로이드강좌
- Rxjava
- 글또
- theming
- Kotlin
- 병럴프로그래밍
- ReactiveProgramming
- 테스트
- viewmodel
- 코틀린
- 디자인패턴
- k8s
- mockito
- kotlin강좌
- 자바
- 스레드
- android
- 알게되는
- 알고리즘
- 코루틴
- 안드로이드스튜디오
- 회고
- Coroutine
- 책
- Gradle
- Compose
- g 단위테스트
- 안드로이드
- 커스텀상태
- Today
- Total
목록개발 (73)
선생님, 개발을 잘하고 싶어요.
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cXTTId/btqCSXeTmc5/SuaIwUZtjnaSuEZFXGT2wK/img.png)
서론 반응형 프로그래밍에 대한 블로그 포스팅을 보고 오시는 것을 추천드립니다. 오늘은 이전 포스팅의 이론적 내용을 실제로 구현해 놓은 라이브러리, RxJava에 대해서 소개해 드리려고 합니다. TL;DR RxJava에서 데이터 스트림을 표현하는 객체는 Observable이다. RxJava에서 데이터 스트림을 읽는 것을 구독이라고 한다. onNext 에서 데이터 스트림에 흐르는 값을 처리한다. onError 에서 에러를 처리한다. 구독을 표현하는 객체는 Disposable이다. Observable ObserverPattern에서 데이터 변경을 알리는 Subject와 데이터 변경 시 발동하는 Observer에 대해서 말씀드렸습니다. RxJava에서는 이 Subject를 Observable이라고 말합니다. O..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/dpHg7v/btqCFx2GNd5/SVYycnUnhhZ6ziomr9tQIK/img.png)
서론 RxJava, 정말 정말 안드로이드 공부를 하거나 콘퍼런스를 볼 때 귀에 딱지가 앉을 정도로 많이 듣던 기술입니다. 그리고 익히는 것도 엄청나게 고생한 것 같습니다. (아직도 한참 멀었지만🙇♂️) 공식 문서, 콘퍼런스, 블로그 포스팅, 책처럼 다양한 방법으로 공부를 시도했고 작은 프로젝트에 써볼 수 있는 상황에 억지로 쓰면서 익혔습니다. 그리고 이제는 RxJava가 가진 장점을 (부분적으로)이해하였고 실제 프로젝트에 열심히 적용하고 있습니다. ReactiveX는 공식 문서 가이드가 Document 이상이 아닙니다. 라이브러리 공식 문서에 으레 있는 "실습으로 배우기"와 같은 내용이 아니에요. 실무 가이드가 아닙니다. Reactive의 개념이 무엇이고 어떤 연산자가 존재하는지 이론적으로 도형으로 그..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/yf7Q2/btqCAPgle5w/8MDNLjHj94VQ9KKLDLGkoK/img.png)
도입 사실 화면 하나의 라이프 사이클은 어려울 것이 없다. 하지만 화면 두개 이상이 결합된 라이프 사이클은 조금 햇갈리는 경우가 많다. A화면에서 B화면으로 이동 할 땐 어떤 일이 일어나지? 뒤로가기를 누르면 어떤 일이 일어나지? A 액티비티와 A 프래그먼트의 관계가 어떻지? 그래서 그냥 한 번에 쭉 로그 찍어서 정리해 놓고 나중에 참조해보자. (그냥 실험 기록장 같은 거라 별 내용은 없다.) 안드로이드 액티비티 라이프 사이클 Activity 수명 주기에 대한 이해 | Android 개발자 | Android Developers An Activity is an application component that provides a screen with which users can interact in orde..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/Eq9N9/btqB9YUahYv/FKoNWj8LgMyKcpROKgMZW0/img.png)
도입 실제 프로젝트를 진행함에 있어서 의존성 주입(Dpendency Injection, 줄여서 DI) 프레임워크의 사용은 필수 불가결하다. 내가 사이드 프로젝트로 사용하던 Koin 도 매우 좋은 DI 프레임워크 이지만, 회사에서는 Dagger2를 사용해서 구현하고 있었다. Dagger는 어노테이션을 사용해서 컴파일 타임에 DI 코드를 작성해주기 때문에, Koin보다 진입장벽이 높았다. 어노테이션만 보고 코드 흐름을 이해하기가 어렵기 때문인데, 그래서 오늘은 가장 주요한 개념들 위주로 소개(라고 쓰고 정리)를 하려고 한다. 의존성 주입 (DI) 고오오대의 내 블로그 글 중에 Koin을 애찬하는 글이 하나 있는데, 그림으로 좀 더 쉽게 이해해보자. 의존성 주입이 없다면, Activity에서 원하는 객체(Ar..