올리브영 앱, 클린 아키텍처로 앱 품질 UP!
by DD
3년 전
조회수 6
올리브영 앱의 유지보수성 및 협업 효율 증대를 위해 클린 아키텍처 도입
Android, iOS 앱 모두 3-layer 구조 기반의 클린 아키텍처 적용
도메인 레이어 설계의 어려움과 팀 협업의 중요성을 강조
클린 아키텍처의 핵심 원리
클린 아키텍처는 관심사 분리를 통해 코드의 유지보수성을 높인다. 구체적으로 엔티티, 유즈 케이스, 인터페이스 어뎁터, 프레임워크로 계층을 분리한다. 따라서 각 계층은 단일 책임 원칙을 준수하며, 의존성 규칙에 따라 설계된다.
모바일 클린 아키텍처 구조
모바일 클린 아키텍처는 프리젠테이션, 도메인, 데이터 레이어로 구성된다. 프리젠테이션 레이어는 UI, 도메인 레이어는 비즈니스 로직, 데이터 레이어는 데이터 처리를 담당한다. 반면 각 레이어는 플랫폼 종속성과 데이터 소스로부터 독립성을 유지한다.
도메인 레이어 설계의 어려움
도메인 레이어는 비즈니스 로직을 담고 있어 변경의 영향도가 크다. 따라서 유지보수성을 고려하여 신중하게 설계해야 한다. 구체적으로 UseCase, Model, Repository Interface를 정의하고, 테스트 코드를 통해 안정성을 확보한다. 결과적으로 코드 품질 향상을 기대할 수 있다.