subtle & plausible

고정 헤더 영역

글 제목

메뉴 레이어

subtle & plausible

메뉴 리스트

    • 분류 전체보기 (118)
      • TIL (89)
        • #100DaysOfSwiftUI (44)
        • 리액트 네이티브 (6)
        • 실용주의 단위 테스트 (9)
        • App Architecture (5)
        • Combine (4)
        • Metal (2)
        • RxSwift (8)
        • Swift Codable (7)
        • TDD iOS (4)
      • 실험실 (3)
      • 책 (15)
      • 오프 (5)
      • 기타 (6)

    검색 레이어

    subtle & plausible

    검색 영역

    컨텐츠 검색

    TIL/RxSwift

    • RxSwift. Ch 8. Transforming Operators in Practice

      2020.05.01 by box-jeon

    • RxSwift. Ch 7. Transforming Operators

      2020.04.26 by box-jeon

    • RxSwift. Ch 6. Filtering Operators in Practice.

      2020.04.25 by box-jeon

    • RxSwift. Ch 5. Filtering Operators

      2020.04.20 by box-jeon

    • RxSwift. Ch 4. Observables & Subjects in Practice

      2020.04.19 by box-jeon

    • RxSwift. Ch 3. Subjects

      2020.04.18 by box-jeon

    • RxSwift. Ch 2. Observables

      2020.01.01 by box-jeon

    • RxSwift. Ch.1: Hello, RxSwift!

      2019.12.28 by box-jeon

    RxSwift. Ch 8. Transforming Operators in Practice

    특정 repo의 최근 activity를 가져와서 보여주는 GitFeed라는 샘플앱을 이용해 map과 flatMap을 실습합니다. Using map to build a request Observable sequence를 조금 더 추상화해서 보면 data array를 다루는 것과 같다고 볼 수 있습니다. 방출되는 Element들을 map을 통해 변형합니다. Using flatMap to wait for a web response 이전 챕터에서 flatMap의 기능이 Observable을 방출하는 Observable을 inner Element를 방출하는 Observable로 바꿔주는 것이라고 했지만, flatMap이 주로 사용되는 패턴은 Observable의 transfomation chain에 asynchr..

    TIL/RxSwift 2020. 5. 1. 21:59

    RxSwift. Ch 7. Transforming Operators

    Transforming elements toArray() - 전달되는 element들을 배열로 방출하는 Observable을 리턴합니다. 이 Observable은 .next 이벤트 전달 직후 .completed 이벤트를 방출합니다. map(_ transform: @escaping (E) throws -> R) - 전달되는 element들을 transform closure의 파라미터로 넣어주고 그 리턴값을 방출하는 Observable을 리턴합니다. enumerated() - 전달되는 element를 index와 함께 방출하는 Observable을 리턴합니다. Transforming inner observables Observable이 프로퍼티로 Observable을 갖는 경우, flatMap을 통해 이를 ..

    TIL/RxSwift 2020. 4. 26. 23:29

    RxSwift. Ch 6. Filtering Operators in Practice.

    이전 챕터에서 실습한 Combinestagram을 이어갑니다. 최근에 '아 이래서 내가 Rx를 못 따라가고 있는 모양이구나' 생각하게 만든 문장이 튀어나왔습니다. Observables are lazy, pull-driven sequence. Simply calling a bunch of operators on an Observable doesn't involve any actual work. The moment you call subscribe(...) directly on an observable or on one of the operators applied to it, that's when the Observable livens up and starts producing elements. Hot Ob..

    TIL/RxSwift 2020. 4. 25. 23:54

    RxSwift. Ch 5. Filtering Operators

    바로 어제 takeWhile이 filter와 같은 동작을 하는 줄 알고 실수를 했는데 오늘 본 내용에서 다루고 있네요. 조건에 따라 .next 이벤트에 제약을 가하는 방법을 배웁니다. Ignoring operators ignoreElements() - 모든 .next 이벤트를 무시합니다. .completed와 .error는 전달합니다. elementAt(_ index: Int) - index에 해당하는 .next 이벤트만 전달합니다. 전달 직후 .completed 이벤트가 발생합니다. filter(_ predicate: @escaping (E) throws -> Bool) - predicate closure가 true를 리턴하는 .next 이벤트만 전달합니다. Skipping operators skip(..

    TIL/RxSwift 2020. 4. 20. 23:13

    RxSwift. Ch 4. Observables & Subjects in Practice

    사용자가 선택한 이미지들을 collage로 만들어주는 Combinestagram이라는 앱을 주고, Rx 기반으로 변경하는 실습을 진행합니다. Combine이 발표되기 한참 전에 나온 책일텐데 아이러니네요. RxSwift traits in practice Single .success(element) 이벤트 또는 .error(error) 이벤트를 방출한 후 dispose 됩니다. Observable.asSingle()로도 생성 가능하며, 파일 저장이나 다운로드처럼 비동기로 동작할 필요가 있는 단발성 이벤트 처리에 주로 사용됩니다. Maybe .success(element) 이벤트 또는 .completed 이벤트 또는 .error(error) 이벤트를 방출한 후 dispose 됩니다. Observable.as..

    TIL/RxSwift 2020. 4. 19. 16:46

    RxSwift. Ch 3. Subjects

    What are subjects? What you want is something that can act as both an observable and as observer. And that something is called a Subject. 별 생각없이 만들어서 binding하고 zip하며 한참 써오다가, 다시 읽으니 그 개념이 확 다가옵니다. RxSwift에서 제공하는 4종류의 Subject를 소개하고 그 wrapper인 Relay가 이어서 소개됩니다. PublishSubject Empty 상태로 시작하며 새로운 element가 들어오면 그대로 방출합니다. Observer는 subscribe 이후에 발생하는 이벤트만 받게 됩니다. BehaviorSubject 초기값을 가진 상태로 시작하며 새로운 ..

    TIL/RxSwift 2020. 4. 18. 22:16

    RxSwift. Ch 2. Observables

    What is an observable? 'observable', 'observable sequence', 'sequence', 'stream' 여러가지 이름으로 불리고 있지만, RxSwift에서는 오직 'sequence'라고 합니다. 코드에 'stream'을 주로 썼었는데 낭패... Observable이 emit하는 Event는 다음과 같습니다. - Event.next(Element): Sequence가 실제로 다루고 있는 데이터를 담고 있습니다. - Event.error(Swift.Error): Error를 담고 있는 이벤트로, 이벤트 발생 시 sequence가 종료됩니다. - Event.completed: Sequence가 정상적으로 종료될 경우 발생하는 이벤트입니다. 간단하게 Observable을..

    TIL/RxSwift 2020. 1. 1. 11:04

    RxSwift. Ch.1: Hello, RxSwift!

    Observable 3개를 이어 붙여서 A의 이벤트를 B가 받아 처리하고 마지막으로 C를 방출하는 흐름을 구현하려고 했는데, 선뜻 구현을 못하고 이것저것 뒤지다가 결국 묵혀둔 책을 다시 꺼냈습니다. 쉽게 이해할 수 있을 정도로 단순한 부분에만 Rx를 제한적으로 사용했는데, ReactorKit을 사용하게 되니 요구 사항이 점점 구체적으로 변하게 되네요. https://store.raywenderlich.com/products/rxswift RxSwift: Reactive Programming with Swift Leverage the power of RxSwift in your reactive apps! In this RxSwift book, you'll learn how to integrate RxSwi..

    TIL/RxSwift 2019. 12. 28. 09:20

    추가 정보

    인기글

    최신글

    페이징

    이전
    1
    다음
    깃헙 브런치 링크드인
    subtle & plausible
    페이스북 트위터 인스타그램 유투브 메일

    티스토리툴바