목록 보기
UIKit 환경에서 SwiftUI 적용기: 여기어때 Home 화면 편
프론트엔드

UIKit 환경에서 SwiftUI 적용기: 여기어때 Home 화면 편

여기어때
여기어때
2024년 12월 5일

두줄요약

UIKit 기반 홈 화면을 SwiftUI로 전환한 적용 과정을 공유했습니다. 기존 ReactorKit과 CMS 구조를 유지하면서 생명주기 브리지와 모델 모듈화를 활용했습니다.

핵심 내용

  • UIKit 기반 여기어때 홈 화면을 SwiftUI로 재구성한 적용 사례
  • 선언형 UI로 코드 단순화와 유지보수성 향상을 기대
  • 기존 ReactorKit과 CMS 구조를 유지하며 전환

구조와 흐름

  • ReactorKit-SwiftUI 라이브러리로 기존 상태 관리와 SwiftUI 연동
  • UIViewControllerRepresentable 기반 LifeCycleModifier로 UIKit 생명주기 보완
  • 복잡한 CMS 트리를 모듈별 앱 모델로 변환해 화면 구성

선택 이유

  • 기존 UIKit 코드의 재사용과 초기 전환 안정성 확보
  • SwiftUI 도입 과정에서 RxSwift 연동 문제를 완화
  • 이후 Combine 중심의 네이티브한 구조로 확장할 기반 마련

주의할 점

  • SwiftUI에서 UIKit 생명주기 이벤트를 직접 사용할 수 없는 제약
  • CMS 구조가 복잡해 모듈별 변환 로직이 필요
  • RxSwift 의존도와 SwiftUI 통합 방식의 과도기성 고려

적용해볼 점

  • 기존 상태 관리 체계를 최대한 유지한 채 부분 전환 시도
  • 필요한 생명주기만 브리지 형태로 연결해 초기 복잡도 완화
  • 복잡한 서버 응답은 화면 단위 앱 모델로 분리 관리

다음 읽기

#SwiftUI 주제를 이어서 읽기

UIKit에서 SwiftUI로의 도약: 여기어때 iOS 아키텍처 변천사

여기어때 iOS 팀의 MVC, MVVM, ReactorKit 변천사와 SwiftUI 전환 검토 과정을 정리했습니다. SwiftUI에 맞는 MVI, 커스텀 MVI, TCA의 적용 방향도 함께 살펴봤습니다.

여기어때
여기어때
아키텍처

댓글 0개

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

댓글을 불러오는 중...