반응형 iOS/ReactorKit3 [ReactorKit] @Pulse 키워드 서론상태 변화를 관리할 때, distinctUntilChanged 동일한 값이더라도 다른 컨텍스트에서 발생하는 이벤트를 구분해야 하는 상황이 발생했습니다. 예를 들어, 사용자가 동일한 데이터를 여러 번 입력하거나, 특정 액션이 반복될 때, distinctUntilChanged는 의도치 않게 중요한 이벤트까지 필터링하여 UI 업데이트가 누락되는 문제가 발생했습니당.이러한 문제를 해결하기 위해 ReactorKit에서는 @Pulse 키워드를 도입하게 되었습니다. @Pulse는 특정 이벤트를 별도의 스트림으로 분리하여 관리할 수 있는 강력한 도구로, 중복 필터링 없이 모든 이벤트를 정확하게 전달할 수 있도록 도와줍니다.@Pulse 키워드먼저, 공식문서를 살펴보겠습니다. 공식문서에는 @Pulse를 다음과 같이 소.. 2024. 10. 25. [ReactorKit] transform과 global state에 대하여 Transformfunc transform(action: Observable) -> Observablefunc transform(mutation: Observable) -> Observablefunc transform(state: Observable) -> ObservableTransform의 함수 종류는 총 3개가 있다. transform 함수는 개발자가 Action, State 및 Mutation 스트림을 조작할 수 있게 해준다.부작용 처리: 로깅, 분석 또는 네트워크 요청과 같은 부작용 처리.복잡한 반응형 흐름 구성: 여러 작업을 체이닝하여 구성.액션 및 상태 필터링 또는 수정: 더 예측 가능한 상태 관리 흐름을 만들기 위해.Global State와의 상호작용: 여러 Reactor가 공통 상태를 공.. 2024. 8. 5. [ReactortKit] ReactortKit 슥 알아보기 ReactorKit?ReSwift와 Flux를 융합하여 만든 아키텍처입니다. ReactorKit는 iOS 애플리케이션 개발을 위해 사용되는 프레임워크로, 단방향 데이터 흐름을 중심으로 한 반응형 프로그래밍을 구현할 수 있도록 도와줍니다 ReactorKit 공식 문서에 따르면 본 아키텍처의 디자인 목표에 따르면 아래와 같습니다.테스트 용이성ReactorKit은 상태와 로직을 분리하여, 테스트 작성이 용이하도록 설계되었습니다. Reactor는 입력(Action)에 따라 상태(State)를 출력하기 때문에, 입력과 출력을 테스트함으로써 비즈니스 로직의 단위 테스트를 쉽게 작성할 수 있습니다.코드의 가독성 및 유지 보수성ReactorKit은 복잡함을 피하는 데 중점을 두었습니다.Reactor는 상태와 로직을 관.. 2024. 6. 9. 이전 1 다음 반응형