Functional Reactive Programming: Scala.Rx Library stellt sich vor

Hartmut Schlosser

Scala.Rx ist eine experimentelle Change-Propagation-Library für Scala, die in Version 0.2.0 erschienen ist. Die Idee hinter Scala.Rx ist, reaktive Variablen bereit zu stellen, die sich automatisch aktualisieren, sobald sich ein abhängiger Wert verändert. Auf GitHub wird die Funktionsweise in einem kleinen Beispiel erläutert. Zunächst werden die Variablen a und b deklariert:

import rx._ 
val a = Var(1); val b = Var(2) 

Die reaktive Variable c addiert nun a und b. Bei einem veränderten Wert für a wird automatisch auch c neu berechnet.

val c = Rx{ a() + b() } 
println(c()) // 3 
a() = 4 
println(c()) // 6 

Scala.Rx geht davon aus, dass 99% der Neuberechnungen einer Variable genau in derselben Art und Weise realisiert werden wie beim ersten Mal. Scala.Rx nimmt dem Entwickler die lästige Update-Logik für solche Neuberechnungen ab und stellt darüber hinaus weitere Funktionalität wie Konstruktoren für Dataflow-Graphen und die automatische Parallelisierung von Updates bereit. Laut Projektseite ist die Interoperabilität mit Scala voll gewährleistet, sodass sich Scala.Rx leicht in existierende Projekte integrieren lässt.

Scala.Rx wird auf GitHub entwickelt und steht in der Maven Central bereit. Auf der GitHub-Seite findet sich auch die Dokumentation, die die Funktionsweise von Scala.Rx im Detail beschreibt.

Geschrieben von
Hartmut Schlosser
Hartmut Schlosser
Content-Stratege, IT-Redakteur, Storyteller – als Online-Teamlead bei S&S Media ist Hartmut Schlosser immer auf der Suche nach der Geschichte hinter der News. SEO und KPIs isst er zum Frühstück. Satt machen ihn kreative Aktionen, die den Leser bewegen. @hschlosser
Kommentare

Hinterlasse einen Kommentar

Hinterlasse den ersten Kommentar!

avatar
400
  Subscribe  
Benachrichtige mich zu: