Open yeongwoojang opened 1 month ago
@LeeEunjeong1 @kch9870
내용 확인 필요
프로젝트 구조
멀티모듈 구조 (App, domain, data, presentation)
- App: 프로젝트 루트
- domain: 안드로이드 의존성 x / usecase를 가짐
- data: 데이터와 상호작용 (ex: 서버 조회, 로컬데이터베이스 접근, 파일 접근 등)
- presentation: UI영역
공통 로직 처리 필요
- 액티비티 이동
- Navigation
- 등등
추가로 필요한 것이 있으면 본문 내용 추가해주세요.
@yeongwoojang 질문이요. Health Connector 연동 부분은 따로 모듈화 하는게 어떨까요? 아니면 저 셋 중에 어디에 포함되는지 알 수 있을까요?
@kch9870
데이터 읽기/쓰기는 data영역에서 하면 될거같아서 내 생각에는 헬스커넥터 연동부분만 따로 빼서 모듈로 만들지는 않아도 될 것같은데,
다른 사람 생각은?
cc. @LeeEunjeong1 @Zibro97
@kch9870
데이터 읽기/쓰기는 data영역에서 하면 될거같아서 내 생각에는 헬스커넥터 연동부분만 따로 빼서 모듈로 만들지는 않아도 될 것같은데,
다른 사람 생각은?
cc. @LeeEunjeong1 @Zibro97
저도 data 모듈에서 관리하고, 기능이 더 추가돼서 분리 필요성을 느낀다면 그때 따로 분리해도 괜찮을 것 같아요
@kch9870
데이터 읽기/쓰기는 data영역에서 하면 될거같아서 내 생각에는 헬스커넥터 연동부분만 따로 빼서 모듈로 만들지는 않아도 될 것같은데,
다른 사람 생각은?
cc. @LeeEunjeong1 @Zibro97
Health Connect와 통신하는 데만 사용하는 거면 data layer에서 관리하면 될 거 같기는 한데, Health Connect Permission도 관리해야 해서 저는 모듈로 따로 관리하는 게 더 좋아 보여요
@Zibro97
gps도 퍼미션이 필요하고 sensor 관련된 것도 퍼미션이 필요한데 그럼 얘네들도 따로 모듈로 빼야 할 것같은데,
그렇게 안하고 런타임 퍼미션이 필요한 작업을 하는 곳에서 퍼미션을 추가하면 될 것같긴함.
어떻게 보면 런타임 퍼미션 요청도 시스템에서 팝업 띄워서 하는거라 UI로 볼수도있는건가
cc. @LeeEunjeong1 @kch9870
@Zibro97
gps도 퍼미션이 필요하고 sensor 관련된 것도 퍼미션이 필요한데 그럼 얘네들도 따로 모듈로 빼야 할 것같은데,
그렇게 안하고 런타임 퍼미션이 필요한 작업을 하는 곳에서 퍼미션을 추가하면 될 것같긴함.
어떻게 보면 런타임 퍼미션 요청도 시스템에서 팝업 띄워서 하는거라 UI로 볼수도있는건가
cc. @LeeEunjeong1 @kch9870
@yeongwoojang
흠..퍼미션 빼고는 Health Connect랑 연동하는 부분 밖에 없어서
라이브러리 모듈로 빼서 관리하나 Clean Architecture 내에서 관리하나 테스트,유지보수 측면에서 똑같긴 한 거 같음
퍼미션은 Presentation Layer에서 Util로 관리하고, Health Connect 연동 부분만 Data Layer에서 관리하면 될듯.
@Zibro97 gps도 퍼미션이 필요하고 sensor 관련된 것도 퍼미션이 필요한데 그럼 얘네들도 따로 모듈로 빼야 할 것같은데, 그렇게 안하고 런타임 퍼미션이 필요한 작업을 하는 곳에서 퍼미션을 추가하면 될 것같긴함. 어떻게 보면 런타임 퍼미션 요청도 시스템에서 팝업 띄워서 하는거라 UI로 볼수도있는건가 cc. @LeeEunjeong1 @kch9870
@yeongwoojang
흠..퍼미션 빼고는 Health Connect랑 연동하는 부분 밖에 없어서
라이브러리 모듈로 빼서 관리하나 Clean Architecture 내에서 관리하나 테스트,유지보수 측면에서 똑같긴 한 거 같음
퍼미션은 Presentation Layer에서 Util로 관리하고, Health Connect 연동 부분만 Data Layer에서 관리하면 될듯.
옹 퍼미션 따로 빼서 관리하는것도 나쁘지 않을 듯여~!
프로젝트 구조
참고: https://brunch.co.kr/@purpledev/43
presentation: UI영역
presenter모듈
domain 모듈
data 모듈
추가로 필요한 것이 있으면 본문 내용 추가해주세요.