iOS 앱, ReactorKit으로 깔끔하게!
by DD
3년 전
조회수 2
ReactorKit은 RxSwift와 함께 사용되는 iOS 앱 개발 프레임워크임
Reactor를 통해 Action과 State를 관리하여 UI 로직을 분리함
상태 관리 용이성과 코드 간결성을 통해 유지보수성을 향상시킴
ReactorKit의 핵심 개념: Reactor
Reactor는 Action을 받아 Mutation을 생성하고, 이를 통해 State를 변경한다. 구체적으로, View에서 발생한 사용자 Action을 처리하고, UI를 업데이트하는 역할을 수행한다. 따라서, MVVM 패턴에서 ViewModel과 유사한 역할을 수행한다.
ReactorKit vs RxSwift 단독 사용
RxSwift만 사용하면 상태 관리가 복잡해질 수 있다. ReactorKit은 Action, Mutation, State를 명확히 분리하여 상태 관리를 용이하게 한다. 반면, ReactorKit을 사용하려면 RxSwift에 대한 이해가 필수적이며, 초기 학습 비용이 발생할 수 있다.
메모리 누수 방지 꿀팁: withUnretained
RxSwift의 `subscribe`에서 [weak self]를 사용하는 대신, `withUnretained` 연산자를 사용하면 코드를 더 간결하게 만들 수 있다. 따라서, 순환 참조로 인한 메모리 누수를 방지하면서, 코드 가독성을 높일 수 있다. 결과적으로, 유지보수성을 향상시킨다.