[iOS/ReactorKit] ReactorKit 알아보기
·
iOS/💻 iOS Study
최근 프로젝트에서 적용한 ReactorKit에 대하여 정리해보고자 한다. 이전에 RxSwift + MVVM Input-Output 패턴을 적용하여 개발했는데, ReactorKit 구조와 비슷하다는 이야기를 들어서 한 번 적용해보았다. 특징 단방향 흐름을 가진 반응형 프레임워크이다. RxSwift와 필수적으로 함께 사용된다. RxSwift의 Observable을 통해 비동기적으로 데이터를 처리하고, 사용자의 이벤트 처리와 UI 업데이트 쉽게 관리할 수 있다. View와 Reactor로 구성되어있고, Reactor가 ViewModel과 같은 역할을 한다. 네트워크 통신이나 db 접근 등 비즈니스 로직을 구성하게 된다. 기본 동작(➡️단방향 흐름➡️) Reactor에는 View에서 받은 Action과 작업(M..
RxSwift 왜 사용??
·
iOS/💻 iOS Study
RxSwift가 뭐야? Reactive Programming in Swift 반응형 프로그래밍? 데이터의 흐름이나 변경사항에 따라 처리하는 프로그래밍 방식 주변 환경과 끊임없이 상호작용을 하는 프로그래밍 외부의 변화에 끊임없이 반응하고 처리한다. 명령형 프로그래밍은 개발자에 의해 작성된 코드가 순서대로 처리되는 방식이라 하면 반응형 프로그래밍은 순서에 상관없이 이벤트 발생 순서에 따라 처리한다. RxSwift는 Swift를 반응형프로그래밍 방식으로 사용할 수 있도록 만들어진 라이브러리 RxSwift를 왜 사용? ✔️ 비동기 작업을 동기적으로 처리할 수 있다. 우리는 swift에서 비동기 작업이 완료 된 후 처리 해야하는 작업이 있을 때 주로 Notification, Delegate Pattern, Clo..
[iOS/RxSwift] API 통신에서 Single과 Observable
·
iOS/🚨 오류 그리고 해결
Sequence contains more than one element. RxSwift로 api 통신을 통해 로그인 기능 구현 중 다음과 같은 오류를 마주하였다. 이 오류와 함께 dispose가 되어버렸다. 오류를 해결하며 알게된 것들을 찬찬히 정리해보자! ✔️ Single single은 traits의 종류 중 하나로 Observable과 비슷한 기능을 수행한다. ✔️ Traits이란? Observable의 파생된 형태이다. Traits을 통해 필요한 이벤트만 사용하여 코드를 좀 더 직관적이고 명확하게 사용할 수 있도록 도와준다. ✔️ Single의 특성 Single은 항상 한 번의 흐름에 하나의 값 또는 에러를 방출한다. Single이 방출하는 이벤트는 onSuccess와 onFailure 2가지 뿐이..
RxSwift 정리하기
·
iOS/🔎 swift 정리하기
💡 RxSwift 관찰 가능한 순차적 형태와 함수 형태의 연산자를 통해 비동기 이벤트를 위한 코드 사용자가 언제 어떠한 버튼을 누를지 알 수 없기 때문에 비동기 처리가 필요하다. 비동기 방식으로 이벤트를 전달하고 전달 받기 위해 RxSwift를 사용하는 것이다. 이벤트를 생성하고 전달하는 Observable 이벤트를 받아 처리하는 Observer Subscribe를 하여 Observer가 이벤트를 받는다. 💡 Observable과 Observer 이벤트 시퀀스를 비동기적으로 생성한다. Observable을 통해 이벤트를 방출(emit)할 수 있다. Observable과 Observer를 통해 Stream(데이터의 흐름)을 통제하고, Operator(just, of, take..)를 통해 ㄴㄴStream을..