이벤트
AAC-ViewModel - 세미나 없이 진행하는 AAC-ViewModel 이야기! 자유로운 토론으로 진행합니다. | Google Devel
I'm attending Google Developer Groups GDG Korea Android w/ AAC-ViewModel - 세미나 없이 진행하는 AAC-ViewModel 이야기! 자유로운 토론으로 진행합니다. on Apr 7, 2022.
gdg.community.dev
생각
AAC-ViewModel..
MVVM 패턴에 빠진 뒤로 내가 만드는 앱에 없으면 안 되는 존재다
MVVM
다른 개발자와의 직접적인 교류없이
인터넷을 보고 공부하며 개발했다. 생각했던 대로 돌아가기에 만족했지만 늘 의심을 품고 있었다
안드로이드에서 MVVM 패턴을 이렇게 구현하는 게 맞을까?
라이브 데이터를 써서 뷰에 데이터를 넘겨주는 게 맞을까?
안드로이드 스튜디오에서 viewmodel+fragment 템플릿을 생성하면 SharedViewModel이 아닌 프래그먼트 1 : 뷰모델 1 인 아키텍쳐가 나왔다
나는 정말 잘 하고 있는 건가?
지금 작업하고 있는 앱까지 3개의 앱을 MVC패턴에서 MVVM으로 리팩터링 했다
그러면서도 확신이 안 섰다
오늘 AAC-viewmodel에 대해 토론한다는 걸 보고 의문을 해결할 수 있을거라는 기대를 가졌다.
사실 뷰모델과 AAC-viewmodel 두개로 나눌 수 있고 두 개가 다르다는 것도 이번 토론 덕분에 알았다ㅎ
사전 설문 조사 결과를 보았고 나름 방향을 잘 잡고 개발하고 있었구나 위로를 얻었습니다.
저는
MVVM - AAC-Viewmodel
LiveData 활용
Acitivity/Fragment 1:N으로 SharedViewmodel 공유
UseCase : ViewModel에서 화면을 그리기 위한 코드를 분리하기 위해 UseCase 활용하고 있고, 이 UseCase는 도메인 package에 속해있다.
이렇게 구현하고 있습니다.
근데 유독 한국에서 AAC-Viewmodel을 많이 쓴다는 이야기를 토론 중에 들었어요
기억에 남는 질문 및 토론 내용
메모 너무 간단히 해서 잘못 적은 정보가 있을지도 모릅니다..ㅎ
안드로이드의 MVVM은 정말 MVVM일까요 또는 AAC-Viewmodel를 쓰는 것이 정말 MVVM 패턴일까요
안드로이드에 MVVM 패턴이 최선의 디자인 패턴일까요
livedata와 flow를 어떤 것을 사용할 지 어떻게 골라야할까요
뷰모델에 context를 넣어도 되나요
sunflower는 정말 아키텍처 공부에 도움이 될까요? 다른 추천 프로젝트가 있나요
Livedata보단 Flow를 쓰는 것이 좋다. Livedata는 종속되어있어서 후에 유닛테스트에서 막힌다. Flow가 익숙하지 않다면 차라리 Rx를 권한다
MSDN의 MVVM은 이론에 가깝다. 그것을 안드로이드 맞게 조금 변형된 것이 안드로이드에서 권장하는 MVVM의 모습이다.
토론 진행 중 공유받은 링크
레이아웃 및 결합 표현식 | Android 개발자 | Android Developers
레이아웃 및 결합 표현식 표현식 언어를 사용하면 뷰에 의해 전달된 이벤트를 처리하는 표현식을 작성할 수 있습니다. 데이터 결합 라이브러리는 레이아웃의 뷰를 데이터 객체와 결합하는 데
developer.android.com
Pluu Dev - SavedStateHandle을 다뤄봅니다
ViewModel InitializerViewModelFactory Posted on 16 Mar 2022 ViewModel CreationExtras Posted on 12 Mar 2022 RxJava의 단위 테스트 ~ subscribe 엣지 케이스 Posted on 18 Feb 2022 Navigating with Compose ~ Serializable/Parcelable 데이터 전달 ~ 2
pluu.github.io
UI 이벤트 | Android 개발자 | Android Developers
UI 이벤트 UI 이벤트는 UI 레이어에서 UI 또는 ViewModel로 처리해야 하는 작업입니다. 가장 일반적인 이벤트 유형은 사용자 이벤트입니다. 사용자는 화면 탭하기 또는 동작 생성과 같은 앱과의 상호
developer.android.com
GitHub - SeongUgJung/MYKA: WIP
WIP. Contribute to SeongUgJung/MYKA development by creating an account on GitHub.
github.com
GitHub - android-alatan/LifecycleComponents
Contribute to android-alatan/LifecycleComponents development by creating an account on GitHub.
github.com