In diesem Artikel werde ich die Grundlagen von RxJava anhand von Beispielen erklären. Dieser Artikel ist für RxJava-Einsteiger gedacht. Wenn Sie aber schon etwas über RxJava wissen, ist dieser Artikel gut geeignet, um Ihr Wissen aufzufrischen.
RxJava ist eine Java-VM-Implementierung von ReactiveX, einer Bibliothek zur Erstellung asynchroner und ereignisbasierter Programme unter Verwendung beobachtbarer Sequenzen.
Die Bausteine von RxJava sind Observables und Subscribers. Observable wird für die Ausgabe von Elementen verwendet und Subscriber für den Konsum dieser Elemente. Vielleicht werden einige von Ihnen denken: „Hmmm, das ist so ähnlich wie das Standard-Observable-Muster“. Und ja, das ist es auch, aber RxJava macht es viel besser und hat mehr Optionen. Zum Beispiel beginnen Observables oft erst mit der Ausgabe von Elementen, wenn jemand sie abonniert hat. Das ist ein großartiges Feature, denn auf diese Weise sollte man sich die Leistung sparen.
RxJava funktioniert folgendermaßen. Subscriber abonniert Observable, dann ruft Observable Subscriber.onNext() für eine beliebige Anzahl von Elementen auf, wenn etwas schief geht, hier ist Subsciber.onError() und wenn alles gut ausgeht, hier ist Subscriber.onCompleted(). Du siehst, das ist einfach!
Halt die Klappe! Gib mir ein paar ausgefallene Codes!
Beispiel 1
In diesem Beispiel werden wir ein einfaches Observable und einen Subscriber erstellen, und dann werden wir sie miteinander verknüpfen und sehen, was passieren wird. Spoiler-Alarm! Etwas Fantastisches…
Lassen Sie uns ein einfaches Observable erstellen:
Das erstellte Observable sendet den String „Blue Factory“ aus und wird dann beendet. Der String „Blue Factory“ wird von der Methode onNext() des Subscribers empfangen. Jetzt erstellen wir Subscriber.