본문 바로가기

RxSwift9

[iOS] Rx 다시 정복(1) feat. Rx Study발표 - 에이젠 이전에도 Rx에 대해 포스팅한 적이 있습니다. 그때보다 더 쉽게 더 자세하게 간지러웠던 부분까지 다시 정리해보려고 합니다. CMC에서 알게된 iOS 개발자분들과(8기, 10기, 11기) 취업을 목표로 스터디를 시작하게 되었습니다. 주제는 세션마다 바꿀 예정이구요. 첫 주제는 RxSwift가 되었습니다. 프로젝트에 RxSwift를 적용해본 경험이 있던 제가 먼저 자연스럽게 첫 발표를 맡게 되었습니다. 막상 Rx가 처음이신 분들께 설명해보려고 하니 이전에 정리한 글과 공식문서의 설명은 마음에 들지 않더군요. ㅎㅎㅎ RxSwift는 반응형 프로그래밍 프레임워크라고 소개됩니다. 반응형 프로그래밍 패러다임. 반응형 프로그래밍을 가능하게 해주는 도구죠. 그리고 함수형 프로그래밍과 결합하여 더 반응성이 좋은 앱을 만.. 2022. 12. 19.
[SwiftUI] SwiftUI의 특징을 살펴보면서(2) - 데이터 주도적(Data driven) 아토믹 디자인을 활용한 디자인 시스템 도입기 아토믹 디자인을 활용한 디자인 시스템 도입기 카카오엔터테인먼트 FE 기술블로그 fe-developers.kakaoent.com 현재 프론트엔드의 트렌드, 프론트엔드에서 무엇을 하고 싶은지 무엇을 향해 달려가고 있는지 참고할만한 사이트 최근엔 RXSwift를 적극적으로 사용해보면서 연산자를 사용하는 적절한 상황을 정리하고 이해도를 높이려고 노력해왔습니다. 근데 이거 왜 했을까요? 지난 번에 SwiftUI는 선언형 구문으로 뷰를 구성할 수 있다라고 하였습니다. 그럼 그전에는 아예 불가능했을까요? 이게 바로 RxSwift를 공부한 이유입니다. Rx덕분에 코드량이 줄어들고 선언형으로 UI를 관리할 수 있게 됩니다. 최근 올렸던 리액터킷 프로젝트 뜯어보기 글에서 느낄 .. 2022. 10. 21.
[iOS] ReactorKit 프로젝트 Drrrible 뜯어보기(2) 리액터킷 적용 예제를 살펴보았습니다. 지난 글에서 로그인 액션이 발생하였을 때 setLoading(true) Mutation을 발생시키며 현재 로딩중임을 알리고 authorize()라는 인증하는 비즈니스 로직을 호출하는 흐름을 쭉 훑어보았습니다. 해당 인증 로직은 서비스 레이어로 넘긴 것을 알 수 있었죠. 서비스 레이어를 살펴보도록 하겠습니다. 비즈니스 로직이 있는 리액터(ViewModel)에 필요한 데이터들을 불러올때 추상화 시킨 데이터 리포지토리(Network디렉토리)를 통해 데이터 소스(local, remote 등등)에 상관없이 서비스 레이어에서 하나의 인터페이스로 데이터를 불러 사용할 수 있도록 구성해두었다는 것을 알 수 있습니다. final class UserService: UserService.. 2022. 10. 13.
[iOS] ReactorKit 프로젝트 Drrrible 뜯어보기(1) https://github.com/devxoul/Cleverbot (참고 링크) GitHub - devxoul/Cleverbot: iOS Messaging Application using Cleverbot and ReactorKit iOS Messaging Application using Cleverbot and ReactorKit - GitHub - devxoul/Cleverbot: iOS Messaging Application using Cleverbot and ReactorKit github.com https://github.com/devxoul/Drrrible GitHub - devxoul/Drrrible: Dribbble for iOS using ReactorKit Dribbble for iOS.. 2022. 10. 7.
[CMC] ReactorKit 사용 전 스터디 CMC 4차 세션에서는 와이어 프레임과 간단한 기술 설계도를 발표를 하게됩니다.(3차는 해커톤으로 패스...) 개발자분들은 기술설계도 발표를 앞두고 개발환경 설정과 필요한 기술스택(or 도전해보고싶은?)을 정리해야할 것 같아요. 처음엔 이 프로젝트에 RxSwift만 적용해보려고 했습니다. 감사하게도 같은 팀의 현직자이신 개발자께서 iOS 관련 조언을 해주셨는데 리액터킷에 대한 내용도 그중 하나였습니다. CMC 첫 오티날 iOS개발자 네트워킹 시간에 처음 들어본 리액터킷... RxSwift를 공부하느라고 그냥 그렇구나 언젠가 봐야지 하고 넘겼었는데요. 프로젝트 개발에 들어가기 전에 얼른 공부해야할 것 같아서 이렇게 정리해보고자 합니다. (참고) https://github.com/ReactorKit/Reac.. 2022. 5. 25.
[iOS] RXswift (4) - Opeartor FileteringOpertor와 TransformingOperator를 알아보겠습니다. FilteringOperator Next이벤트를 통해 받아오는 값을 선택적으로 취할 수 있게 해주는 연산자 기존 Swift의 filter와 비슷한 역할 ignoreElements elementAt filter skip skipwhile skipUntil take skip에 skipWhile과 skipUntil이 있었던 것처럼 take에도 takeWhile과 takeUntil이 존재합니다. enumerated 방출된 요소의 index를 참고하고 싶을때 사용 takeUntil distinctUntilChanged 중복제거 TransformingOperator 변환연산자는 Subscriber를 통해서 Observable에.. 2022. 5. 13.
[iOS] RXswift (3) - Subject 참고 : https://reactivex.io/documentation/subject.html ReactiveX - Subject If you have a Subject and you want to pass it along to some other agent without exposing its Subscriber interface, you can mask it by calling its asObservable method, which will return the Subject as a pure Observable. See Also reactivex.io Observable이면서 Observer의 역할이 가능한 Subject Subject 종류 PublishSubject : 빈상태로 시작하여 새로운 값 .. 2022. 5. 13.
728x90