목록 보기
발전하는 iOS와 Clean Swift Architecture
아키텍처

발전하는 iOS와 Clean Swift Architecture

spoqa
spoqa
2024년 3월 6일

두줄요약

iOS 앱에서 기존 Clean Swift가 최신 Swift 환경과 맞지 않는 문제를 짚고, CIS 패턴으로 재구성한 사례를 소개했습니다. View, Controller, Interactor, Store, Worker로 역할을 나누어 상태 관리와 테스트 가능성을 높였습니다.

핵심 내용

  • iOS 앱에 Clean Swift 아키텍처를 적용해 온 배경과, SwiftUI·상태 관리·비동기 처리 변화로 인해 기존 방식이 현재 iOS 환경에 맞지 않게 된 문제 제기
  • 단일 책임, 테스트 가능성, 프레임워크 독립성, 상태 관리 용이성을 목표로 CIS(Controller-Interactor-Store) 패턴으로 구조 재해석
  • View, Controller, Interactor, Store, Worker의 역할을 분리하고, Domain/Interface Adapter/Infrastructure의 3계층으로 정리
  • 상태 바인딩, 순수한 액션 처리, 도메인 상태 분리, 부수효과 처리 확장 등을 통해 더 나은 Clean Swift로 개선 시도

적용해볼 점

  • UI 프레임워크와 비즈니스 로직의 결합도 낮추기
  • 상태 변경과 도메인 로직의 책임 분리
  • 단방향 흐름과 읽기 전용 도메인 상태로 예측 가능성 높이기

다음 읽기

#Clean Architecture 주제를 이어서 읽기

도도카트 안드로이드 앱 개선 여정

복잡해진 안드로이드 앱을 모듈화하고 Kotlin DSL, Hilt, Coroutine·Flow 기반으로 정비했습니다. GraphQL 모델 분리와 테스트 확대를 후속 과제로 남겼습니다.

spoqa
spoqa
프론트엔드
전체 보기

댓글 0개

댓글을 작성하려면 로그인이 필요합니다.

댓글을 불러오는 중...