• 카테고리

    질문 & 답변
  • 세부 분야

    모바일 앱 개발

  • 해결 여부

    미해결

전역 변수만을 갖고 있는 클래스 위치

23.01.19 08:57 작성 조회수 224

0

안녕하세요!

아키텍쳐를 실무에 도입하다 궁금증이 생겨 질문드려요.

클래스 중에 전역 변수만을 저장하는 클래스가 있습니다.

앱을 켰을 때만 전역 변수에 데이터를 저장하고, 앱을 끄면 데이터를 날리는게 목적인데요.

 

이 클래스의 레이어가 어느 위치인지 잘 모르겠어요 ㅠㅠ

일단은 usecase 처럼 viewModel에서만 접근할 수 있는 위치다 라고 생각했는데, 다시 생각해보니 어떤 데이터를 메모리에 저장하고 있는거니 db 처럼 data layer(datasource) 에 있어야 하나 싶습니다.

이런 클래스는 어떻게 다루는게 좋을까요?

 

답변 1

답변을 작성해보세요.

0

좋은 고민인 것 같습니다.

특정 레이어에서만 접근 하는 클래스라면 그 레이어에 두시는 게 맞습니다

ch leem님의 프로필

ch leem

질문자

2023.01.19

근데 계속 활용하다 보니 전역변수 클래스의 데이터로 타 DB, API를 호출하는 경우도 생깁니다. 그래서 2가지 안에서 결정이 안내려지네요

  1. viewModel - 전역변수 클래스 - repository - datasource

  2. viewModel - repository - datasource 와 전역변수 클래스

장기적으로 봤을 때 뭐가 더 선호되시나요?

 

결국 DB나 API 호출에 사용되기 때문에 2번이 아닐까요?

그런데 ViewModel에서도 사용하나요?

ch leem님의 프로필

ch leem

질문자

2023.01.20

지금은 viewModel 이 UseCase 역할도 같이 하고 있어 viewModel 에서 비지니스로직을 처리하는데, 쓰이기도 합니다!

가장 좋은 것은 presentation 레이어와 domain/data 는 의존성이 없는 것이 좋지만
모듈로 나눌것이 아니라면 util 이나 other 등의 디렉토리를 만들어서 관리하는 방법이 있습니다.

ch leem님의 프로필

ch leem

질문자

2023.01.26

감사합니다! 생각이 좀 더 명확해졌어요! :)