Meine RxSwift-Zusammenfassung ②

Erfahren Sie mehr über die Funktionen von RxSwift

Dieser Artikel ist eine Fortsetzung von My RxSwift Summary ①.

Funktionen von RxSwift

Bei der asynchronen Verarbeitung sind zwei Punkte zu beachten.

--Code Ausführungsreihenfolge

Ist.

RxSwift behebt diese Probleme, indem es die folgenden zwei Konzepte einbezieht:

Und ich habe die folgenden fünf Funktionen. (= [Reaktives System](https://thinkit.co.jp/article/9185#:~:text=%E3%83%AA%E3%82%A2%E3%82%AF%E3%83%86 % E3% 82% A3% E3% 83% 96% E3% 82% B7% E3% 82% B9% E3% 83% 86% E3% 83% A0% E3% 81% A8% E3% 81% AF% E3 % 80% 81% E3% 81% B2% E3% 81% A8% E3% 81% 93% E3% 81% A8% E3% 81% A7% E8% A8% 80% E3% 81% 86% E3% 81 % A8% E3% 80% 8C% E5% 8D% B3% E5% BF% 9C,% E3% 80% 8D% E3% 81% A7% E3% 81% 99% EF% BC% 88% E5% 9B% B31% EF% BC% 89% E3% 80% 82))

--Responsive → Gibt immer den neuesten Status der Anwendung in der Benutzeroberfläche wieder --Resilient → Jeder Prozess ist getrennt und die Fehlerbehebung ist einfach. --Elastic → Variable Workload vs. [Verzögertes Laden](https://ja.wikipedia.org/wiki/ % E9% 81% 85% E5% BB% B6% E8% AA% AD% E3% 81% BF% E8% BE% BC% E3% 81% BF) und [Gas](https: // Future-Architect) .github.io / articles / 20200121 /), gemeinsame Nutzung von Ressourcen und andere Funktionen

RxSwift-Komponenten

RxSwift besteht aus drei Komponenten: "Observable / Operator / Scheduler".

Observable Ein Beobachtungsziel, das durch "Observable " definiert ist. Eine Reihe von Ereignissen, die einen invarianten Schnappschuss (Kopie der Daten zu diesem Zeitpunkt) einer Reihe von Daten streamen, die im Laufe der Zeit generiert wurden. Kann asynchron generiert werden.

Mehrere "Beobachter" können in Echtzeit auf Ereignisse reagieren, um die Benutzeroberfläche zu aktualisieren und Daten zu verwenden. Das ObservableType-Protokoll kann die folgenden drei Ereignisse erzeugen.

--next → Ereignis, das die nächsten Daten zum Beobachter bringt. Bringen Sie so lange Werte zum "Beobachter", bis "abgeschlossen" eintritt. --abgeschlossen → Beenden Sie eine Reihe von Ereignissen mit Erfolg und benachrichtigen Sie den Beobachter. --error → Benachrichtigen Sie, dass Observable mit error endete.

Operators Observable <Typ> enthält viele Methoden (Operatoren), die eine asynchrone, ereignisbasierte Verarbeitung durchführen. Da diese nur die Ausgabe ohne den Nebeneffekt erzeugen (der sich auf der Benutzerseite in der Benutzeroberfläche widerspiegelt), können Sie "Operator" kombinieren, um die Eingabe in einen beliebigen Wert zu konvertieren. Um einen typischen "Operator" zu nennen,

--filter → Extrahieren Sie nur die Werte, die die Bedingungen erfüllen

Und so weiter. (Ich werde es später in einem anderen Artikel zusammenfassen.)

Scehduler Scheduler ähnelt Dispatch Queue und die Verarbeitung kann in Haupt- und Neben-Thread unterteilt werden. RxSwift hat viele vordefinierte Scheduler, also ist es praktisch!

RxCocoa Bei "RxSwift" geht es um die allgemeine Verwendung von Rx, nicht nur um "Swift". "UIKit" usw., die "Swift" eigen sind, werden mit "RxCocoa" behandelt. RxCocoa ist eine Bibliothek, die vielen UI-Teilen reaktive Funktionen hinzufügt.

Recommended Posts

Meine RxSwift-Zusammenfassung ②
Meine RxSwift-Zusammenfassung ①
Meine RxSwift-Zusammenfassung ③ (Was ist beobachtbar?)
Meine RxSwift-Zusammenfassung ⑤ (Was sind Themen / Relais?)
Meine RxSwift-Zusammenfassung ④ (Was ist eine Entsorgungstasche?)
Zusammenfassung
Objektorientierte Zusammenfassung
Ransack Zusammenfassung