앱 아키텍처 - 1
아키텍처 원칙 앱 아키텍처는 앱의 부분과 그 각 부분에 필요한 기능 간의 경계를 정의 앱의 견고성을 높이며 앱을 쉽게 테스트할 수 있도록 하려면 몇 가지 특정 원칙을 준수하도록 앱 아키텍
dev-jewon.tistory.com
이전 글에서는 관심사의 분리 원칙에 대해 다루었다.
안드로이드 앱 아키텍쳐에는 3가지 레이어가 존재하며 이들은 각각의 '책임'을 명확히 가지고 있다.
3가지 레이어
UI Layer (사용자 인터페이스 레이어)
사용자의 입력을 받고, 출력을 제공합니다.
사용자 경험(UX)과 직접적으로 관련이 있습니다.
Domain Layer (도메인 레이어):
비즈니스 로직을 처리합니다.
앱의 핵심 기능을 정의하고 관리합니다.
Data Layer (데이터 레이어):
데이터의 저장, 조회, 업데이트, 삭제 등을 처리합니다.
로컬 또는 원격 데이터 소스와의 통신을 관리합니다.
이렇게 각 레이어는 명확한 책임을 가지고 협업하여 안드로이드 앱의 성공적인 작동을 돕습니다. 구조적인 아키텍쳐는 코드의 가독성과 유지보수성을 높여, 개발 프로세스를 효율적으로 만듭니다.
레이어 간의 통신
레이어 간의 통신은 '단방향 데이터 흐름' 원칙을 따릅니다.
Up Stream 방식
사용자의 액션에 의해 발생한 이벤트는 UI Layer에서 시작하여 Domain Layer를 거쳐 Data Layer로 전달됩니다.
Down Stream 방식
원격 또는 로컬 서버로부터 받은 데이터는 Data Layer에서 시작하여 Domain Layer를 거쳐 UI Layer로 전달됩니다.
이러한 단방향 데이터 흐름은 앱의 구조를 명확하고 예측 가능하게 만들어, 효율적인 레이어 간의 통신을 지원합니다.
'Android > Architecture' 카테고리의 다른 글
앱 아키텍처 - 1 [관심사 분리] (1) | 2023.10.31 |
---|