

Swift Concurrency 1탄: async/await, Task, TaskGroup개념 정리
Swift Concurrency의 기본 개념인 async/await, Task, TaskGroup, Task.detached를 정리했습니다. SwiftUI와 TCA에서의 사용법과 주의점도 함께 소개했습니다.


Swift Concurrency의 기본 개념인 async/await, Task, TaskGroup, Task.detached를 정리했습니다. SwiftUI와 TCA에서의 사용법과 주의점도 함께 소개했습니다.


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


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


Apple Watch의 Notification 동작과 Long-look Interface 구현 과정을 정리했습니다. 알림 목적지 결정, Action 처리, 로그 수집 방법까지 살펴보았습니다.


SwiftUI의 `sheet`와 `presentationDetent`를 활용해 BottomSheet를 구현한 경험을 정리했습니다. 동적 높이와 확장형 시트, 커스텀 배경을 위한 인터페이스 설계 방향을 소개했습니다.


SwiftUI View에서 `task`의 실행 맥락과 `MainActor` 보장 여부를 살펴보셨습니다. Swift 6에서는 property wrapper에 의한 actor inference가 제거되므로 `@MainActor` 명시가 중요합니다.


SwiftUI ScrollView의 기본 구조와 iOS 버전별 주요 API 변화를 정리했습니다. 또한 UIScrollView와의 차이와 대용량 콘텐츠에서의 성능 주의점도 함께 살펴보았습니다.

모듈화를 통해 SwiftUI Preview의 종속성을 줄이고 로딩 속도를 개선한 사례를 공유했습니다. Mock 데이터와 세분화된 UI 컴포넌트로 다양한 상태를 빠르게 검증하는 방법을 소개했습니다.


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

UIKit + RxSwift 기반 디자이너앱을 SwiftUI + Combine으로 리팩토링하는 과정을 소개합니다. 기존 구조를 유지하기보다 전면 수정에 가까운 전환 작업을 진행하고 있습니다.


SwiftUI NavigationView에서 Coordinator 패턴을 구현하는 방법을 정리했습니다. 프로그램적 화면전환, LazyStack 대응, PopToRoot까지 처리하는 흐름을 설명합니다.