본문 바로가기

Kotlin17

[안드로이드/Kotlin] RxJava - 마블 다이어그램 과 Observer 오늘은 RxJava의 설명을 듣다 보면 빠지지 않는 마블 다이어그램과 옵저버를 알아보려 한다. 마블 다이어그램 이 마블 다이어그램은 반응형 프로그래밍에서 일어나는 비동기적인 데이터 흐름을 시각화한 도표이다. 이 마블 다이어그램을 읽는 방법을 알아보자. 읽는 방법 위 사진에서 설명하는 것처럼 읽으면 되는데, 위 사진에서 Observable을 언급한다. 이 Observable을 알아야 마블 다이어그램을 읽을 수 있을 것 같으니 한번 알아보자. Observable RxJava에서는 Observable을 구독하는 Observer가 존재하며, Observable이 순차적으로 발행하는 데이터에 대해서 반응한다. 이 Observable은 3가지의 이벤트를 사용하여 동작한다. onNext() : 하나의 소스 Obser.. 2022. 7. 7.
[안드로이드] LiveData 좀 더 자세히 알아보기 저번에 LiveData를 데이터 바인딩과 합쳐서 설명을 해 줬었는데, 그때 LiveData에 대한 설명이 좀 부족했었다. 내가 잘 모를 때이기도 하면서, 급하게 썼었기 때문인 것 같다. 그래서 이번에 제대로 한번 공부해 와 보았다. 먼저 Gradle세팅부터 해야 한다. 저번에 말했던 gradle(Module:...) 파일에 dependencies { ... implementation 'androidx.appcompat:appcompat:1.4.1' ... } dependencies에 이렇게 implementation을 해준다. 그러면 세팅은 끝이 났다. 일단 실습으로 들어가기 전에 이론적인 것을 먼저 알아보자. LiveData란? Livedata는 관찰 가능한 데이터 홀더 클래스이다. 일반적인 Obser.. 2022. 5. 2.
[안드로이드/Kotlin] MVVM응용 - 번호 뽑기 만들기 내가 MVVM을 연습하면서 번호 뽑기 앱을 만들어 보았다. 이걸 만들고 나니 MVVM을 생각보다 쉽게 사용하게 된 것 같다. 일단 먼저 폴더를 나누어 주었다. 그다음 gradle을 정의해 주었다. 이건 저번에 사용한 라이브 데이터와 데이터 바인딩과 같다. android { ... dataBinding { enabled = true } } dependencies { ... def lifecycle_version = "2.2.0" implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.4.1" implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.4.1" implementation "androidx.a.. 2022. 3. 18.
[안드로이드] 라이브 데이터 + 데이터 바인딩 알아보기(LiveData + DataBinding) 이번에는 LiveData를 이용한 데이터 바인딩이다. 우리는 저번 포스팅을 통해 DataBinding이 무엇인지 알고 있으니 LiveData에 대해 한번 알아보도록 하자. 만약 DataBinding이 뭔지 모른다면 DataBinding [안드로이드] Databinding 알아보기 저번 MVVM을 알아보고 연습하기 위해 인터넷을 찾아봤는데 Databinding 이란 것도 알아냈다. 생각보다 유용한 거 같아 가져와 봤다. 일단 데이터 바인딩을 쓰는 이유부터 알아보자. 데이터 바인딩을 krapoi.tistory.com LiveData 수명주기를 인식할 수 있는 관찰 가능한 홀더 클래스이다. 근데 이 라이브 데이터라는 친구가 혼자서는 작동을 할 수가 없는데, 그래서 Observer가 필요하다. 내가 라이브 데이.. 2022. 3. 11.
[안드로이드] Databinding 알아보기 저번 MVVM을 알아보고 연습하기 위해 인터넷을 찾아봤는데 Databinding 이란 것도 알아냈다. 생각보다 유용한 거 같아 가져와 봤다. 일단 데이터 바인딩을 쓰는 이유부터 알아보자. 데이터 바인딩을 쓰면 xml파일에 데이터를 넣기 때문에 상대적으로 코드 수 가 적어지게 된다. 또한 findViewId()를 쓰지 않아도 된다. 그리고 이전에 설명한 MVVM패턴 구현에도 유용하기 때문이다. 아, 참고로 구글에서는 findViewId만 쓰지 않을 거라면 차라리 쓰지 말라고 한다. 어쨌든 이러한 이유들로 쓰게 되는 데이터 바인딩에 대해 알아보자. 먼저 gradle을 추가해 줘야 한다. build.gradle이 2개가 있을 건데 빨간 동그라미가 쳐져있는 build를 켜면 된다. 그다음 android 부분에 .. 2022. 3. 9.