Android 에서도 co-located fragment 개념이 있나여?
# 질문
u
Android 에서도 co-located fragment 개념이 있나여?
h
개념 자체는 Platform agnostic 합니다. 구현을 제공하는건 본적 없네요
u
안드로이드 개발자 분한테 설명드리려고 하는데 뷰와 프래그먼트가 같이 위치하는건가요? 리액트에선 컴포넌트와 프래그먼트잖아요? 안드에선 VM에서 뷰로 데이터를 가공해서 내려준다고 하는데 어떻게 할수 있을지 궁금합니다!
h
안드로이드도 선택한 아키텍처에 따라서 좀 달라서... 맥락을 좀 더 알아야 할 것 같은데요
Colocation 자체는 GraphQL 이랑 연관짓지 않고도 설명할수 있긴한데
u
MVVM이라고 합니다! 이게 아키텍쳐가 맞는진 모르겠지만...
h
Colocation + Declarative pattern 두개로 나눠서 설명할 수 있을 것 같아요.
👍 1
👀 1
Declarative pattern은 "무엇"과 "어떻게"를 분리해서 사고하고 UI에선 "무엇"을 표현할지 선언하는데만 집중한다고 볼 수 있는데
여기서 "무엇"에 해당하는 것들을 기술로 구분하지 않고 관심사 위주로 응집도를 높이기 위해 하는 것들이 Colocation 이죠
웹으로 따지면 JSX (UI 선언)에, CSS-in-JS (스타일 선언)에, GraphQL Fragment (데이터의존성 선언) 등을 함께 배치하는 일인데
안드로이드에서 얘기하는 MV* 아키텍처들은 모두 레이어드 아키텍처라서 조금 주제가 다를거같아요. 멘탈모델 쉬프트가 필요해요
컴포넌트 중심적인 사고 자체는 Jetpack compose 가 몰고오는거같은데
그쪽에 스타일이나 데이터패칭 같은 concerns 가 통합이 되는지 모르겠네요
다 들어가있네요
u
jetpack compose 라는게 안드에서 컴포넌트 중심 사고를 하게 도와주는건가요?
h
그럼 그냥 "Jetpack compose 같은거에요" 라고 얘기하면 맞지 않을까요 ㅋㅋㅋㅋㅋㅋㅋㅋㅋ
u
ㅋㅋㅋ 아 근데 알파버전이네요 ㅠ
h
Jetpack compose 는 안드로이드에서 다양한 성공사례들 모아다가 만든 새로운 툴킷인데요. 저보다 안드로이드 개발자분한테 역으로 설명들으시는게 나을듯
관련 얘기하다보면 어느순간 일치하는 부분이 생길거에요
u
그러면 멘탈모델을 바꾸지 않는한 해당 개념 구현은 불가능한걸까요?
h
네 레이어드랑 워낙 달라서요
u
그렇군요! 설명 감사합니다!