Reactive Programming

Video in TIB AV-Portal: Reactive Programming

Formal Metadata

Title
Reactive Programming
Title of Series
Author
License
CC Attribution 3.0 Unported:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor.
Identifiers
Publisher
Release Date
2017
Language
German

Content Metadata

Subject Area
Abstract
Reactive Programming mit JavaScript macht Spaß – und zwar nicht nur den Entwicklern, sondern auch den Benutzern einer Applikation. Das Ziel dieses Paradigmas ist eine Anwendung, die den Benutzer im Fokus hat, ihn kontinuierlich informiert hält und auch unter suboptimalen Bedingungen noch eine beeindruckende User Experience vermittelt. Die gute Nachricht hinter all dem: Sämtliche Technologien, die für ein reaktives System benötigt werden, stehen schon zur Verfügung. JavaScript-Entwickler müssen noch nicht einmal etwas Neues lernen, sondern lediglich ihre Vorgehensweise bei der Umsetzung etwas anpassen und ein paar Regeln folgen.
Loading...
JavaScript Software developer Software developer Windows Workflow Foundation Computer programming Computer programming
Systems <München> Computer programming Computer programming
Systems <München> Software developer Route of administration Focus (optics) Computer programming Computer programming
Web page Component-based software engineering Systems <München> Module (mathematics) Aktion <Informatik> Computer programming
Time zone JavaScript Reaktives System Structural load JavaScript Structural load Software developer Kommunikation Computer programming Event horizon Computer programming Kopplung <Physik> Systems <München> World Wide Web Module (mathematics)
Facebook Mathematics Systems <München> Bindung <Stochastik> Computer programming Computing platform Computer programming
Dataflow Data model Query language Direction (geometry) Bindung <Stochastik> Linie Computer programming Event horizon
Arm Grand Unified Theory World Wide Web Computer programming Computer programming
Code Sorting algorithm Windows Workflow Foundation Sound effect Object (grammar) output Computer programming Computer programming Number
Filtration ASIA <Programm> Fünfzig Tape drive Object (grammar) Data structure Length Computer programming Event horizon Web browser Computer programming
Implementation Arm JavaScript Open source Computer programming Event horizon Data stream Microsoft Microsoft Component-based software engineering Operator (mathematics) FRAMEWORK <Programm> MITIS Curve fitting
Windows Workflow Foundation Sound effect Functional programming Computer programming Encapsulation (object-oriented programming) Computer programming
Programming language Implementation JavaScript PHP Functional programming Implementation Computer programming
Scripting language Noten <Programm> Server (computing) Funktionalität Version <Informatik> Grand Unified Theory Funktionalität Web browser Atomic nucleus Computer programming Web browser Computer file
Server (computing) User interface Tape drive Data structure Computer programming Event horizon
Military rank Collision Information Code Programmablauf BALL <Programm> Perturbation theory Computer programming Event horizon
Source code Data stream Server (computing) Abtrieb <Aerodynamik> Operator (mathematics) Mittelungsverfahren Mass Web browser Computer programming Event horizon
Data stream Mapping Operator (mathematics) Sorting algorithm Diagram Operator Computer programming
Source code Series (mathematics) Dataflow Touchscreen Digital filter Mapping Information Counting Computer programming Event horizon Rounding Number Position Data stream Operator (mathematics) Military operation Mover <Programm> Windows Workflow Foundation Object (grammar)
Tuple Time zone Arm Code Tape drive Coroutine Computer programming Event horizon Value-added network Data stream Tiefe Windows Workflow Foundation Pattern language Electric current Tuple
Service (economics) JavaScript Code Aktion <Informatik> Tape drive Omega <Programm> Counting Event horizon Component-based software engineering Operator (mathematics) Scripting language Operator Exception handling Source code Digital filter Version <Informatik> Information Maxima and minima Computer programming TOUR <Programm> Data stream Query language World Wide Web Normal (geometry) Operator Data type
Scripting language Set (mathematics) Mittelungsverfahren Web browser Counting Computer animation Computer programming Frame problem Field extension Funktionalität Queue (abstract data type) Scripting language Queue (abstract data type) Scheduling (computing) Logic gate Task (computing)
Source code Electronic data processing Information Eigenvalues and eigenvectors Error detection and correction Open set Set (mathematics) Computer programming Event horizon Data stream Military operation Windows Workflow Foundation Video game console Musical ensemble Scheduling (computing) Error message Chain rule
Time zone Data stream Code CASHE Tape drive Coroutine Error detection and correction Computer programming Error message Chain rule
Instanz <Informatik> Eigenvalues and eigenvectors Tape drive Coroutine Computer programming Chain rule
Instanz <Informatik> Windows Workflow Foundation Computer programming
Vortex Instanz <Informatik> Arm Windows Workflow Foundation Coroutine Cloning Computer programming Event horizon
Mapping Mapping Windows Workflow Foundation output Computer programming Event horizon
Digital filter Mapping Coroutine output output Counting Computer programming Chain rule
Code World Wide Web ACCESS <Programm> Windows Workflow Foundation Operator Web browser Uploading Computer programming
User interface Computer programming
Hallo. Er fügte sich gleich ist und Rockstar auf der Bühne. Ich seh euch bloß nicht vor lauter nicht so arm Ja Ja zahlreicher etwas überragte Programming. funktioniert gut. Am .
Am René haben mich ja gerade schon größtenteils vorgestellt Am Ich spreche Deutsch Amen bin aus München und Yamaha Club Entwickler.
Und ich wird euch heute erzählen Am was über reaktiv Programming Bis hier muss zum Hintergrund wo er kommt das Wie gliedert sich das in das ganze System ein.
Und wie kann man das konkret machen es gibt mehrere Libraries Wir werden uns heute reaktive Extensions anschauen Wenn euch das nicht Haupt gibt es ähnliche Andere Libraries dir benutzen können. Nur soviel dazu.
Am Rektor Programming müssen Teil Amen Diese ganzen reaktiv Familie Hoen zu haben die Grundlage davon bilden die Reaktivierung Systems an dass es eine Art und Weise wie man Systeme gestaltet Rom am dem Benutzer möglichst großen Nutzen zukommen zu lassen.
Und zwar ist es ja so wir sind hoffentlich alle Web Entwickler Hohen Wir müssen da mit ganz anderen Problemstellung Umgehen als . anderen Bereichen der Entwicklung zum Beispiel Kommandozeilen Applikationen. In das Web Entwicklung müssen wir sehr sehr flexibel sein was Releases angeht was am Änderungswünsche Queens angeht das heißt wir brauchen schon mal am Systeme die diese Entwicklungsarbeit erlauben ohne uns dabei unterstützen dann ab dies gerade gesehen die BBC skaliert Wir wollen das natürlich auch zwar nicht mit. Schon von Nutzern aber im kleineren Bereich. Und wir wollen flexibel auf Fehler reagieren das heißt wenn unsere Applikation sollte sich irgendwann mal doch Fehler einschleichen wollen wir nicht dass unsere komplette Applikation zum Stehen kommt sondern nur bestimmter Teil nicht mehr funktioniert möglichst bald so dass das komplette System erhalten bleibt. Job. Im Zentrum steht der Nutzer Das ist derjenige der im Endeffekt dafür verantwortlich ist dass wir unser Geld kriegen das heißt unsere komplette Entwicklung richtet sich nicht danach die neuesten Technologien auszuprobieren oder am irgendwas sonst zu machen sondern wir müssen dem Nutzer Mehrwert schaffen Und da eignen sich diese am reaktiven Systeme.
Dazu die Säulen von seinem area Kiefern Systemen. Sind diese vier Punkte Ohren zu haben da gliedert sich dieses Projektes Programming hervorragenden ein werde dir gleich sehen warum.
Ries Bonsels heißt Wir müssen schnell antworten der Nutzer muss immer wissen vorsteht. Wir gehen jetzt von einer Applikation aus die dynamisches das heißt die erbetene Webseite der Nutzung von oben nach unten durchliest sondern der Benutzer interagiert der Benutzer interagiert in den Mandaten produziert oder Daten konsumiert und Auswertungen macht oder ähnliches das heißt auf unserer Seite bewegt sich was. Das muss schnell gehen es gibt keine Wartezeiten.
Wir müssen wie schon gesagt mit Fehlern umzugehen. Modulare Systeme eignen sich daher voran wenn ein Modul kaputte es ist es zwar unschön aber die komplett Applikation es immer noch funktionsfähig wenn Monolith kaputt geht dann ab dem Problem.
Messe strömen als Javas glückte Entwickler am seit er mit asynchrone tät und Event Handling vertraut dass es auch eines der Kernelemente von seinem reaktiven System. Und da eignen sich halt JavaScript hervorragende für weil die ganzen Events schon im System drin sind und die eigentlich nur noch damit umgehen müssen. Zu guter Letzt müssen wir elastisch sein was die Last angeht die auf unserem System wirkt als auch am Die Features und alles drum rum das heißt am unser System muss dehnbar sein und muss auch Änderungen verkraften können. Zusammengefasst müssen wir interaktiv sein das heißt unsere Nutzer muss mit uns arbeiten können flexibel das heißt wenn unsere Nutzer Herz stand blaugrün möchte müssen wir das Ende einbauen können neue Features müsse sie integrieren lassen. Toleranz und in Kopplung gehen Hand in Hand das heißt wir brauchen ein Modul Konzept mit dem wir arbeiten können und das Ganze muss Gallier Bars sein Sohn erregt vieles System ist nicht nur im Frontends sondern auch im Backend und das muss sich also durch ziehen Es bringt nichts wenn wir das Beste Frontends haben wir nun Sobek endlich mitspielt also wirklich durchgängigen Ansatz wählen.
So reaktive Systeme haben eher als genügen durchgekaut Ich hoffe ja Zonen groben Eindruck um was es geht. Jetzt Schumanns an was dieses Reaktors Programming für uns tun kann.
Wir fangen mit Grundschule Mathematik an. Einzelne eins S zwei So reaktive Programmierung heißt jetzt . Wenn ich seh ändere sollte es sich auch A ändern weil a eine Komposition aus B und C ist das heißt eine Änderung in eurer Applikation Kaskade komplett Dur. Dass es so der Das Grundkonzept von Sonar reaktiven Applikation nehmt euch am Facebook oder nur andere social media Plattform wenn ihr irgendwohin Klick dann Flakturm plötzlich irgendwo Notification ich auf oder ähnliches und das Wilmer eigentlich in der Applikation haben den Nutzer unterrichtet halte. Der Nutzer informiert halten. Und über das funktioniert eben mit solchen Systemen.
Der dabei nicht solchen Begriff sein Das beschäftigt sich damit dass eine Änderung eben Kaskaden kann.
kennt das wahrscheinlich aus ein Julia Wer von euch damit schon zu tun hatte. Model unten im Video Division Kanus Model ändern Das Model Canby View ändern holen. der Repräsentation eures Models wird abgedreht. Das sondern ein kleines Problem Wenn wir mehr als zweitausend solche Model Repräsentation auf eurer Seite habt Wirtz mit einer eins Wenn Latif langsam. Schlecht. Dazu.
Aus dem Grund kehrt man immer mehr von diesem dort die Linie ab und geht hinzu unidirektional Datenfluss das heißt die Daten fließen immer in eine Richtung In regt kennt man dieses System die Daten fließen von der Wurzel in die Blätter. und . hat den Riesen Vorteil des hier nicht jeden Datenpunkte Abfragen müsste ob der an der Änderungen interessiert ist sondern das Kaskaden Durch und übernimmt für euch die Arbeit. Das Ganze läuft sehr viel über eventuell das heißt die Events. In euch immer wieder.
Jetzt wenn ihr reaktiv Programming machen wollt müsst ihr etwas Umdenken Was heißt diese alten Patterns mit linearem Programmfluss Die Funktionieren leider nicht mehr Ihr müsst sehr viel Milch Kolbergs arbeiten und einfach am etwas anders an das ganze Wand gehen. Gute S Das Handwerkszeug kennt ihr schon Was habt ihr alle schon benutzt und ihr müsst nur noch etwas lernen da rein zu kommen.
Das Ganze lässt sich sehr gut mit Armen im kleinen Arrays Beispiel verdeutlichen Arrays sagt doch was hoffentlich wirken sich nicht mit oranges aus sehr gut.
So. Eine Programmier Aufgabe für euch an uns wird wahrscheinlich die Zeit nicht ausreichende aber am Wir wollen nur gerade Zahlen und wir möchten dass die Zahlen aufsteigen zur Tier. Und ganz wichtig Jute bedeutet das aus. Durch das an das hier nicht Objekte editiert und Zeiten Effekte erzeugt weil es kann sehr hässliche nahe werden sondern versucht immer Emil Begleiters Structures das heißt die Arbeit auf diesem Areal und jede Operation auf diesem Arrays erzeugt ein neues Arrays. Ist die wesentlich weniger fehleranfällig ist wesentlich einfacher zu handhaben und auch wesentlich besser Test bauen.
So. Was es Javas Group Code und der Macht das was wir gerade wollten. Die Einnahme dieses Rey. Das wird gefiltert und sortiert und das was und wer erzeugen als Ausgabe Aso Output ist ein neues Arrays wer mit alles erfüllt was wir uns eigentlich zur Aufgabe gestellt haben.
Wenn wir jetzt eins weiter gehen können via Events im weitesten Sinne auch als solche Arrays Elemente betrachten das heißt ein Events Stream ist nichts anderes als ein Array von Event Objekten. Und wenn ihr euch bezogenen Stream von Events mal anschaut.
Und das als einzelne Datenelemente seht Asia hier das erste Element mit x ein Hundert fünfundzwanzig Opsin on achtundzwanzig dann könnt ihr mit diesen Informationen arbeiten. Das heißt und sind riskiert in dem Fall nur Amen Events mit dem X Wert von über zwei Hundert fünfzig. Sprich in unserem Arrays Beispiel hätten wir da einfach nen Filter angewendet. Was hindert uns daran daß hier auch zu tun Wir maßen Grosny täte Wir haben wie Wenz aber mit reaktiv Programming können wir Events auch als solche Daten Objekte betrachten und Operation damit machen das heißt dieses ganze asynchrone Programmheft Länge wird für uns viele viele. voran weil wir die Methoden die wir ja schon auf Datenstrukturen anwenden jetzt auch auf asynchron Operation anwenden.
Also Handwerkszeug asynchrone tät Events und Datenströme kennt die alles schon.
Dazu kommt noch der Laienbrüder. Die heißt reaktiv X. Externe Schnees das Ding ist von Microsoft entwickelt.
OLAF ist Framework das häufig am Parteitag begibt um euch die Arbeit mit solchen Events Streams vielmehr zu erleichtern. Und jetzt anschauen wie diese reaktive X Implementierung in JavaScript aussieht. Das Ganze besteht eigentlich im Groben aus drei Teilen Observationes erbt Operators Jabs Genesis das sind die kann Komponenten von reaktiv Extensions ohne zu ahnen diejenigen unter euch die Armen Fit mit Design Patterns sind Wenn hier gleich mal das Observatorium dann raus schmecken.
Wer ist nix anderes das ganze gewürzt mit funktionale Programmierung Walls gerade so Hippies und ihr habt reaktiv Programming mit Märkte extensiv nicht das Ganze hat nichts mehr zu tun als ihre Kapsel alles schön in Funktions Blöcke vermeide zeitnah Effekte und eure Applikation wird Wiesen.
abbauen. So jetzt haben wir dieses Eric Jazz.
Das ist die Adaption von reaktiv Extensions Auf Java Script Das ist im Büro täglich können durch runterladen wie es open source Es gibt von diesen reaktiv Extensions für andere Programmiersprachen auch Adaption wie zum Beispiel für bloß plus Pfeifen Swift Pia P Sohne Latte an Implementierungen das heißt wenn der . Der Mann zu langweilig wird könnt ihr das Gelernte trotzdem auch in anderen Sprachen noch verwenden.
Mehr braucht ihr nicht tun einfach die Datei laden. Dieses Areal Jazz kommt in verschiedenen Variationen Eriks Ol beinhaltet den kompletten steckt da es alles drin Vom Funktionsumfang Skip The Light Version dieses weniger drin In der Dokumentation steht bei jeder Funktionalität in welchem Paket dieses Ding enthalten ist was heißt dann müsst ihr etwas nachschauen Menhire. Die Größe Europas Skripts reduzieren wollen ob ihr Boss Ol überhaupt wirklich braucht. Das Gute ist diese Rechte für Extensions funktionieren nicht nur im Browser sondern auch Servers Seite mit Not beziehungsweise wenn ihr kein Noyes Haupttonart Peer B oder ähnliches könnt ihr auch auf Servers Seite diese reaktive Extensions nutzen. Dieses Eriks Not fügt einfache nur noch zusätzliche Funktionalitäten hinzu dass reist im Kern ist dieses Oryx Jazz auch hier vorhanden und ihr Können nutzen.
Gut. Grundstruktur ist klar dann kommt zu den Einzelheiten wärmere mich einmal die Observanz.
Ob Server Bels Amen. Daten Punkte. Die sich ob Sawa Subscriber können und diese ob Serbe Bells Am Im mitten über eins das heißt die benachrichtigen ihrer Observer.
Vom Workflow ja ganz einfach ihr definiert einen Observern Der mit den Events umgeht mit diesem Daten Stream umgeht Ihr definiert ein Observatorium auf einem Event auf einer Datenstruktur auf billige beliebigem dann verknüpft ihr die zusammen und dann seid ihr raus weil dann. übernimmt das System für euch und arbeitet selbstständig.
Code mäßig sieht es relativ einfach aus ihr diesen obskure war der obskure war hat drei Möglichkeiten entweder reagiert auf das nächste Event Es passierten Fehler der behandelt wird oder das Ding ist fertig dann gibt 's wieder ne Callback Funktion. Das zweite ist ein Observanz. Hier Dieser Origenes Observation Rain Stoß generiert euch einfachen Arrays mit Informationen die ihr konsumieren könnt und der dritte Punkt hier dieses source of Observer. bindet diese beiden miteinander das heißt ab diesem Punkt konsumiert euer Observer die Informationen aus dem Obsorge Bälle und ihr seid raus.
Da gibt es zwei Varianten von Observanz einmal gibt es diejenigen die immer Feuern das heißt wenn ihr nennen Observatorium auf Keyboarder Events Subscriber baut und euer Benutzer drückt auf der Tastatur Rum dann werden die Events gefeuert ob am Dan absolviert rauf ist oder nicht. Wenn ihr diesen Range Observatoire baut dann muss ich zum Beispiel ein Obsorge drauf Subscriber forderten konsumiert werden ist der Unterschied zwischen Hot und Colt bei den Hot Observable kann sein dass Europa wenn es durch die Lappen gehen wenn ihr euch zu spät Subscriber Line. Soll die einfach nur wissen.
So Ihr könnt euch auf alles Mögliche Subscriber hier zum Beispiel auf Batten Klicks auf Keyboard Events auf Maui Move Events auf irgendwas Hauptsache es produziert Events und das Abtrieb durch drauf Dafür gibt es am von R X eine Methode die ja ist vom Events. Und da Werft der einfach irgendwas Reihen Das Events generiert in unserem Fall hier Browser seitiges Jammers Crypt funktioniert für Noyer es ähnlich und dann kann es losgehen auch hier wieder Ob Server generieren Observing beginne Viren und beides verknüpfen und das Maß schon. Das nur so Mittel interessant Waljagd eine Event Quelle ein Event Ziel und die beiden hängen zusammen. Setz nichts Neues.
Dazu kommen jetzt die Operators und hier wird spannend weil Ihr könnt zwischen Quelle und Ziel einfach Am Elemente ein hängen die irgendwas mit diesem Datenstrom tun und dass es genau die Stärke von diesen reaktive Extensions dass in dem ich genau diesen Datenstrom manipulieren und für euch arbeiten lassen können.
Operators hängen an Observationes und Können verkettet werden das heißt ihr führt einfach diesen Datenstrom weiter und könnte dann was damit tun erinnere ich an das Orakel Beispiel Filter Sort Das sind unsere Operatoren. Diese reaktive Extensions haben eine sehr nette Art und Weise euch das Zeug beizubringen.
Mit diesen Mabel Diagramms Es gibt für jeden Operator Sohn Diagramm und der zeigt euch genau an was diese Operation tut. Unserem Fall haben wir hier die Map Operation und die dem Kugeln Map das Ganze auf irgendwelche anderen Zeichen das heißt es transformiert die Eingabe. So die erste Kategorie von Observer von Operators generiert euch Observanz Die einfachste Form ist dieses Observanz Creed und Dar generiert der einfachen in ganz stumpfen .
Datenpunkte Der mit On next Information raus wirft und on kompliziert ist es beendet da könnt ihr Timeout schreien setzen da könnt ihr Intervalle Weinen setzen dass es eigentlich Euch überlassen muss ehe machbar ihr die völlige Freiheit müsst fallen auch selber entwickeln. Das zweite ist dieser am Statische Observatoire Das generiert euch einfach eine Rain schon Zahlen von null zehn Elemente weiter ist eine Reihe von null bis zehn. Und dann habt ihr noch die andere Möglichkeit auf Events zu substituieren ihr seht Das funktionell asynchron und synchron und wird gleich behandelt das heißt Objekten Zugroute Operation habt oder asynchrone Operation ist dem System eigentlich egal ist ob Scribe und rauf und der Datenfluss wird immer gleich behandelt Oppositionsgruppen oder asynchron. Dann habt ihr diese Transform Operators wenn es einen Datenstrom aufgesetzt hat Werft ihr da zum Beispiel Sohn Map drauf und transformiert die eingehenden werde in ausgehende werde wenn er sich vorstellt ihr habt zum Klick Event und Zeit nur an der Position dieses Klick Events interessiert. Werft ihr die eingehenden Events in sondern Datenstrom rein Zieht Euch nur die Position raus umgibt die dann weiter. ihr modifiziert das Ganze. Da gibt es noch andere Transform A Methoden wie zum Beispiel Group bei ihr könnt ähnliche Elemente wie hier zum Beispiel die Runden Zusammen gruppieren können zählen wieviele Runde Events habe ich wie viele eckige Events habe ich. Neuerdings der ganze weitere Palette. Dann haben wir die Möglichkeit diesen Datenstrom einzuschränken Euch interessiert nicht Jedes Event sondern zum Beispiel nur einem Klick Events dienen bestimmten Screen Bereich auftreten oder Informationen mit in bestimmten Wert von bis war könnte diese Filter Operationen rein parken da könnt ihr zum Beispiel mit . Filtern dass ihr nur eindeutige Ergebnisse kriegt und nicht Wiederholungen davon. Am um die Informationen eben einzuschränken und dann gezielter weiterarbeiten zu können gerade bei Events ist es so Wenn wir am Maus Move Events habt und die am innerhalb von nur bestimmten Toleranz Grenze sich nur ändern dann interessiert das nicht. Zum Beispiel raus Filtern. Ihr könnt auch Observanz kombinieren.
Und dabei auch verschiedene Möglichkeiten.
Am Ende denn du und van Kombi Nieren mehrere Observablen zu einem Tupel das heißt ihr PIR zwei Events Dreams oder zwei Observable Streams und die wollt ihr zu einem kombinieren. Dann nimmt er erstmals Oliver Observable verknüpft die anhand eines Patterns mit diesen und Verknüpfungen dann entwickelte er einen Plan daraus mit diesem denn du und nahe am Callback Funktion um zu bestimmen wie diese resultierenden Tupel 's aussehen sollen und schließlich .
euch mit diesem armen Obsorge Bel Wenn an diesen Datenstrom knüpfen. Ohne zu arm dran Aktion ausruhen. Code Hier führt dazu dass jeder Wert dieses Dreams in einem Tupel eingebunden wird das hat den Nachteil wenn die Asynchronmaschine Streams verbindet das die Generation des nächsten Tupel auf den langsamsten Stream wartet Das kann unter Umständen schlechte perfekt. auf sich ziehen sondern muss der auch immer aufpassen was hat das für Auswirkungen was sie tut Da müsst ihr sehr wohl auf oder asynchrone tät achten. Dann haben wir die Möglichkeit verarmen solche Datenströme auch zu Murchison das heißt es kommen Events aus mehreren Strömen und ihr wollt das zu einem zusammenfassen weil ihr Danes gemeinsam Dispatcher oder ähnliches haben. Ihr könnt euch das vorstellen wie zum Beispiel Klicks auf verschiedene Buttons oder Elemente oder verschiedene Eingaben wie zieht er in einen strikt zusammen. Die zusammen und können dann die eine gemeinsame Behandlungs Routinen auf das ganze anwenden. Hier hängt auch immer davon ab wann wird Zonen Event ermittelt das heißt ihr barely Tief wenig Kontrolle darüber haben wie die Reihenfolge ist sondern das wird Anfang in neueren Stream rein gepustet und ihr geht dann so damit um wie es braucht. Dann können wir so Dinge machen Wie ist in meinem Strieme ein bestimmtes Element enthalten oder erfüllt Mein streamen Am eine bestimmte Bedingungen.
In unserem Arrays Fall Amen. hier zum Beispiel die Abfrage ist jedes Arrays element Lumière wenn nicht kann ich ne Ausnahmebehandlung machen Wenn Jahr kann ich einfach weiter dass es so ne Art Validation Omaha Eure Datenströme zu prüfen und wenn die Valide sind einfach weiterzumachen. Dann können wir prüfen ist ein bestimmtes Element immer im Datenstrom enthalten oder auch nicht. Könnte er dann auch sagen am Main Datenstrom lebt ohne bestimmte Zeit dann beende ich diesen Datenstrom und nach Beendigung könnte er dann die Prüfung stattfinden lassen. Wieder wichtig dass ihr mit diesem asynchronen Charakter von dem System auch etwas spielt und Umgehen könnt weil es bringt euch nichts wenn ihr da wunderbare Aktion darauf macht und haben eben wissen wollen ob jedes Element Orest Freemans de bestimmte Kondition erfüllt wenn der stream nie endet wenn in der sie ihre auswirkt. Natürlich kann zu befragen stellen. Ja. Frauen Nähe das der . Sobald der das erste findet werde auf damit. Bei Avery Suso am er muss prüfen ob all generell. Dann habt ihr. Was auch sehr schickte es am mathematischer Operator das heißt ihr könnt Adam Informationen über euren Stream Am Entweder zusammenfassen Extremwerte berechnen lassen dass es recht praktisch wenn hier irgendwelche schattigen Auswertungen habt Omega A da nicht selber Choden zu müssen sondern dabei. Ganzes Satz an Operatoren schon zur Verfügung gestellt. Mit den könnt ihr umgeben. Wenn wir den Fall haben sollte dass ihr Sohn in Events Stream habt und aus dem dann wieder in ganz normalen JavaScript Datentyp machen wollte. Diese Tuor Parathormon Asir könnt aus einem Events Stream ein Array wieder machen oder ihr könnt auszunehmen Observable Rain auch wieder ein Java Script Aral machen um damit weiterzumachen Das macht vor allem Sinn wenn Jahn in bestimmten Punkt zeit und Diese reaktive Extensions in Euren Legacy Code. Die Griechen wollt und Dane bestimmte Daten Form aufweisen müsst um es weiter zu behandeln. Diese Tour Parathormon sehr viel Sinn daß es nicht nur auf Arabisch schränkt sondern auch auf Ereignis Club zwei Tausend fünfzehn Maps und setzt das heißt ihr habt das wirkliche Datenmengen die ihr dann einfach weiterreichen. So wird ist es so dass diese Vielfalt von Operatoren ein ziemlich schneller schlagen kann. aus dem Grund gibt es einen Diskussion Try und der hilft euch den richtigen Operator für ihren Zweck zu finden das heißt ihr könnt hier sagen ok Ich möchte Ich habe am bestimmtes Observanz. Arm und mit dem und das möchte ich anhand eines bestimmten Kriteriums Filtern Ohm Minen Ausgabe zu erzeugen dann wird hier rauskommen Bitte nutzt den Filter Operette wenn ihr habt Ich möchte am Netz verzögerte Abfolge von Main Events haben dann Nutz bitte nennt die Layout. Und so könnt euch dadurch handeln weil es ist wirklich so ne Riesen Liste von Operatoren Die euch da zur Verfügung steht hohen zu haben da finden sich nicht so schnell zurecht und ist es meistens so dass ihr von der Problemstellung ausgeht und dann das Werkzeug sucht und nicht das Werkzeug kennt und neue Problems. Als zumindest in der Realität sein. Aus dem Grund ist das eine sehr gute Hilfe findet sich in der Dokumentation wider da gibt es auch in der aktive Version davon aus heißt ihr kann durch Durch Klicken und am euch wird weitergeholfen. Neben den Armen Observable SS und der in Operators gibt es nur noch eine dritte Komponente sind die Scuola und Sohns Sketch Jula Amen bestimmten Ausführung Kontext eines am Ob Service.
Das ist in Java Script Hierzu Mittel sinnvoll Am das macht vor allem Sinn in anderen Sprachen da könnt ihr Fred Pools nutzen ollen zu haben andere Dinge in Java Script ist die Funktionalität etwas reduzierter etwas weniger komplex. Gut. Da gibt es verschiedene s Gate Julia Am Der Standard oder wenn Ihr Nachteil übergebe ich am wird synchron ausgeführt also einfach ist ob Skript euch dann passieren irgendwelche Dinge und dann läuft oder Picker zu weiter Es gibt die Möglichkeit das Ganze in die Warteschlange zu.
Wenn die abgearbeitet ist wird dann die nächste Operation abgearbeitet und so weiter. Dan dieses . Wie schnellstmögliche Abarbeitung also am Eure Task werden zum nächsten möglichen Zeitpunkt ausgeführt wenn euer Browser wieder Ressourcen frei hat. entkoppelt das Ganze asynchrone Verarbeitung erreicht ihr am besten mit im Set Timeout von Null. Dann Zeit die aus dem ausführenden Kontext raus Eure Operation laufen weiter und das Ganzes entkoppelt. Und dann gibt es noch eine nette Erweiterung Die heißt Arik Jazz Baum und da können wir auch auf die eine Maische Frames eures Browsers gehen und die Animation im Browser flüssiger gestalten dass es sehr gut wenn ihr am Animations oder Grafik lastige Applikation entwickelt um die Anime. Schon flüssig zu gestalten Dieses Sixty Frames für Sequenz Ziel lässt sich hiermit sehr gut erreichen und Japan in Sketch Jula der dafür sorgt dass Europa Ration immer in diesen Time Frames passieren und eure Applikation einfach gut und flüssig aus. Wie sonst Gert Jonke wirksamer uns am besten im Beispiel anschauen.
Und zwar haben wir hier nennt Rain Operette. Der generiert Unzen Observatorium wir Subscriber uns drauf und geben einfach nur die Elemente aus Standard Fall. Lok wie Vorsatz Scribe dann werden unsere operations abgearbeitet dann Afters Obskurität ganz normaler synchroner Programmfluss. Operation blockieren das heißt wenn ihr da viel Macht wird erstmal blockiert. Wenn wir das Ganze asynchrone Scat Jugend. an habt ihr hier das wie Vorsatz Crime. dann habt ihr eure Operationen und dann habt ihr des Afters Subscriber wird aber entkoppelt. geführt das heißt ihr erstes Konsole davor dann habt ihr das Konsole Lok danach und dann kommen erst eure entkoppelt Operationen. Wir brauchen hier nur vorstellen wenn eine große Menge an Daten verarbeiten wollt Kannst du Haus sinnvoll sein. Wenn ihr am Das entkoppelt eure Applikation bleibt Responsive Der Nutzer kann trotzdem noch interagieren und . Die am Events werden dann abgearbeitet Wenn wieder Ressourcen zur Verfügung stehen. Wenn ihr jetzt aber solche Event. Händler baut für Klick und A Tastatur Events Die werden schon für euch asynchronen abgehandelt das heißt die müsst euch da keine Sorgen machen dass an Batten An warten offenen Backen Blick der Regen in der Zukunft passiert eurer Applikation zum Stehen bringen. übernimmt das System schon für euch. ist vor allem wichtig wenn ihr so arm synchrone Datenverarbeitung mitten im eigenen Namen Observatoire Band starten wollte. Gut Damit hat er als die drei Kernpunkte von Erics Jazz gesehen das heißt er die Obsorge Bilz die Informationen generieren wirbt die Oper Writers die auf dem Datenstrom und den Informationen arbeiten ob das jetzt synchron generierte Informationen Visionen Rain. asynchrone Operationen wie Klicks oder ähnliches sind es euch eigentlich egal und ihr habt den Observer der am Ende steht kombiniert das Ganze mit am Euro scheitert jedoch aus die dafür sorgen dass Russland sehr im richtigen Kontext und in der richtigen Art und Weise ausgeführt wird. Jetzt kann man natürlich noch unsere Anforderungen das wir mit Fehlern Umgehen können insofern Datenstrom Kants immer passieren dass ein Fehler auftritt. Erinnert euch eventuell daran erinnern dass wir am Anfang am .
Den Fall hatten dass ihr Sohn in Observer Creek. Und da haben wir das und next das einfach den nächsten Wert in diese Kette rein wirft und on Error lösten Fehler aus das heißt ihr habt ihr möglich Keith von Fehlerbehandlung Die nimm Exception Händlern gleichkommt.
Amen Wenn Sohn Fehler auftritt wird erstmal die Verarbeitung angehalten und ne Fehlerbehandlung 's Routine ausgeführt. Ihr habt grundsätzlich die Möglichkeit von seiner Art Try Ketsch im Asyl Kronen Kontext. Ganze auszuführen. Code mäßig sieht so aus On Error wirft Zonen Fehler und ihrer beim Subscriber die Möglichkeit neue Error.
Am Behandlungs Routine anzugeben die wird dann im Fehlerfall aufgerufen und behandelt euern fehle. Cash euer Stream ist aber dann beendet also dieses diese Fehlerbehandlung 's Routine markiert das Ende eines solchen Datenstroms erst dann tot. Der gesamte Datenstrom also Ja Ihr lauft Wenn ihr euch diese Murmel Kette vorstellt in der Mitte passierten Fehler Ihr Lauf bis zur dritten Murmel dann passiert er Fehler und dann ist das man Schluss. muss aber nicht sein. Ihr PT mehrere Möglichkeiten also dass wir als die Standard Routine.
Es gibt die Möglichkeit haben solche mit solchen Fehlern umzugehen und zwar am mitten im Catch könnt ihr aus verschiedenen Observablen denen auswählen der keinen Fehler wirft.
Allerdings praktisch Unia noch die Möglichkeit zum Beispiel mit dem Retro .
Arm das ganze nochmal aufzurufen in der Hoffnung dass der Fehler nicht wieder auftritt als Dark gibt es auch die verschiedensten Varianten Am mit Fehlern in Sonar Kette umzugehen ihr die Möglichkeit am so verschiedene Sequenzen miteinander zu Mördern und wenn Fehler auftritt den Fehler ans Ende die. Sequenz zu setzen dass die Fehler Behandlungs Routine ers greift wenn alle anderen nicht fehl schlagenden Sequenzen fehlerfrei durchlaufen. Was immer dann auch schon bei der Kombination von mehreren Streams Grundsätzlich könnt ihr das schon tun Asir können mehrere Streams am miteinander kombinieren das Problem ist jeder Stream besitzt seine eigene Observable Instanz.
Das Problem dabei ist wenn ihr Am Zum Beispiel armen aufwenden Fehler reagieren wollt dann tritt der nicht zwingend in jeder Instanz des Observatoriums auf das heißt ihr wollt eigentlich immer auf derselben Instanz dieses Observable arbeiten. mit ihr Fehler und ähnliche Ausnahmesituation immer mit Krieg Aus diesem Grund gibt es diese Subjekts.
Unseren samt trägt könnt euch vorstellen Visionen Verteiler in dem Strom. Hier setzte in einem Fach zwischen Rhein und Armen.
passiert folgendes. Die eine obskure Wirbel Instanz und die wird auf mehrere verteilt dass es quasi eine Weiche die immer wieder Klone desselben Events erstellt und an alle ob sauber das gleiche weiterleitet. Das Problem es wenn wir das nicht macht ist wird irgendwann Fehler Aufgang kann es sein dass in der einen Routine der Fehler Auftritt in der anderen Routine der Fehler nicht auftritt und dann seid ihr leider raus. So jetzt haben wir noch ein kleines Beispiel damit ihr auch sehen dass sich das in der Realität umsetzen lässt Wir haben ein Eingabefeld und wir wollen zählen wie viele Am Buchstaben in diesem elementaren eingegeben wurden dazu nutzen wir erst mal.
Ein Map und ein Liebau ns Wir kriegen Keyboard Events rein Wir ziehen uns dann wurde in Wert aus der eingegeben wurde Wir wollen nicht bei jedem Keyboard Event Am das ganze berechnen Walnuss uns viel zu viel Arbeit ist für uns ist es nur Relevant wenn es eine Sekunde zeitverzögert ist das heißt wir sammeln. und am geben dann einmal gesammelt aus.
Frau zieht folgendermaßen aus ihr holt euch des Input fällt erholt euch das Ausgabe fällt ihr erlebt er ihr liegenden Observable an für dieses hier ab Input Event. Er wendet dann den Map Filter an ihr wendet dann wenn die Bounce Filtern also wenn es sechs Hundert lang kein weiteres Event Am passiert dann wird die nächste Routine in der Kette ausgeführt und diese nächste Routine ist dies Abstraktion und am angibt die einfach den Wert. Den oder berechnet in das Ausgabe mit fällt ein und das wars. Das ist jetzt ganz triviales Beispiel und am Das findet er in jedem weiteren halbwegs vernünftigen Tutorial auch wieder was sich viel spannender an der ganzen Sache finde.
In diesen reaktive Extensions in dem Guitar Brennpunkt. Gibt es eine Seite die heißt Example.
Und Nein. Und diese Example z.
halten Ganz viele Beispiele von Relevanz als Zinna Rian wo ihr diese Reaktion Extensions anwenden können. Das reicht von ganz einfachen Dingen wie ich sehe euch gerade hier gezeigt habe mit Ich setze einfach Operating Center Nanda Bis hin so arm. Bielefeld. Wir dann hier schon seht Am Der Code ist etwas umfangreicher. Aber hier findet halten hier wirkliche Anwendungszweck Arrian wie er das ganze inne richtigen Applikation Händeln könnt Am Erb Tier Observation Beginner Riera ihren Tears Subskription Ihr habt Am Operette Anwendung Also da könnt ihr auch gut und gerne mal . Mal schauen was euch euer Da Überweg läuft was für euch Sinn macht einfach mal Anregungen holen einfach mal das Zeug runterladen in eurem Browser Cyber Ausprobieren mal schauen wenn ihr Damm an der einen oder anderen Stelle was dreht Wie verhält sich die Applikation. Das bringt mehr als Doku lesen weil da kann man sich die Finger mal schmutzig machen und Dinge damit tun. Das ist mein Beispiel übrigens schamlos von hier geklaut. Am dass es diese Operator hintereinander Reihung. Und Ihr seht einfache Beispiele bis zu relativ komplexen. Die drei Joche ist zum Beispiel also Dag hindurch ruhig auch mal Anregungen. Gut.
Damit Simmer soweit durch ein kurzer Überblick über reaktiv Droge Mengen mit Oryx Jazz.
Loading...
Feedback

Timings

  624 ms - page object

Version

AV-Portal 3.20.2 (36f6df173ce4850b467c9cb7af359cf1cdaed247)
hidden