Mon résumé RxSwift ②

En savoir plus sur les fonctionnalités de RxSwift

Cet article est une continuation de Mon résumé RxSwift ①.

Caractéristiques de RxSwift

Il y a deux points à prendre en compte dans le traitement asynchrone.

Est.

RxSwift résout ces problèmes en incorporant les deux concepts suivants:

Et j'ai les cinq caractéristiques suivantes. (= [Système réactif](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))

--Adaptatif → Toujours refléter le dernier état de l'application dans l'interface utilisateur --Résilient → Chaque processus est séparé et la récupération d'erreur est facile. --Elastique → Charge de travail variable vs [Chargement retardé](https://ja.wikipedia.org/wiki/ % E9% 81% 85% E5% BB% B6% E8% AA% AD% E3% 81% BF% E8% BE% BC% E3% 81% BF) et [Throttle](https: // future-architect .github.io / articles / 20200121 /), partage de ressources et autres fonctionnalités

Composants RxSwift

RxSwift a trois composants: ʻObservable / opérateur / planificateur`.

Observable ʻObservable Une cible d'observation définie par `. Une série d'événements qui diffusent un [instantané] invariant (https://wa3.i-3-i.info/word14388.html) (une copie des données à ce moment) d'une série de données générées au fil du temps. Peut être généré de manière asynchrone.

Plusieurs «observateurs» peuvent réagir aux événements en temps réel pour mettre à jour l'interface utilisateur et utiliser les données. Le protocole «ObservableType» peut générer les trois événements suivants.

--next → Evénement qui amène les données suivantes à ʻobserver. Continuez à apporter la valeur à ʻobserver jusqu'à ce que terminé se produise. --completed → Terminer une série d'événements avec succès et avertir l'observateur. --ʻError → Notifier que ʻobservable s'est terminé par ʻerror`.

Operators ʻObservable contient un certain nombre de méthodes (ʻOperators) qui effectuent un traitement asynchrone basé sur les événements. Puisque ceux-ci ne génèrent que la sortie sans effet secondaire (se reflétant du côté utilisateur dans l'interface utilisateur), vous pouvez combiner ʻOperator` pour convertir l'entrée en n'importe quelle valeur. Pour nommer un «opérateur» typique,

--filter → Extraire uniquement les valeurs qui remplissent les conditions --Effectuer un traitement pour toutes les valeurs qui ont coulé dans map → ʻObservable --skip` → Passer une valeur spécifique

Etc. (Je vais le résumer dans un autre article plus tard.)

Scehduler Scheduler est similaire à Dispatch queue, et le traitement peut être divisé en thread principal et sous-thread. RxSwift a beaucoup de Schedulers prédéfinis, donc c'est pratique!

RxCocoa «RxSwift» concerne l'utilisation courante de Rx, pas seulement «Swift». ʻUIKit etc. propres à Swiftseront traités en utilisantRxCocoa. RxCocoa est une bibliothèque qui ajoute des fonctionnalités réactives à de nombreuses ʻUI parts.

Recommended Posts

Mon résumé RxSwift ②
Mon résumé RxSwift ①
Mon résumé RxSwift ③ (Qu'est-ce qui est observable?)
Mon résumé RxSwift ⑤ (Qu'est-ce que les sujets / relais?)
Résumé de mon RxSwift ④ (Qu'est-ce qu'un sac d'élimination?)
Résumé
Résumé orienté objet
résumé du ransack