XtendFX: Die Xtend Library für JavaFX
Xtend ist bekanntlich die Programmiersprache, die nach Java übersetzt wird und Erweiterungen wie Typeninferenz, Operator Overloading und Lambda-Ausdrücke mit sich bringt. Mit XtendFX steht nun eine Library zur Verfügung, die die Zusammenarbeit von Xtend und JavaFX vereinfachen soll.
Beispielsweise wird durch die Annotation @FXBean das Schreiben von JavaFX-konformen Java Beans erleichtert. Benötigt man in reinem JavaFX zwei Felder und drei Methoden pro Property, wird dies mit XtendFX zum Kinderspiel, wie das Beispiel auf GitHub demonstriert:
/** * A login bean written in Xtend. */ @FXBean class LoginBeanXtend { String userName = "" String password }
Geschwätziger Code wird auch beim JavaFX Data Binding vermieden.
Aus:
startButton.disableProperty().bind(anim.statusProperty().isNotEqualTo(Animation.Status.STOPPED)); pauseButton.disableProperty().bind(anim.statusProperty().isNotEqualTo(Animation.Status.RUNNING)); resumeButton.disableProperty().bind(anim.statusProperty().isNotEqualTo(Animation.Status.PAUSED)); stopButton.disableProperty().bind(anim.statusProperty().isEqualTo(Animation.Status.STOPPED));
wird:
startButton.disableProperty -> (anim.statusProperty != STOPPED) pauseButton.disableProperty -> (anim.statusProperty != RUNNING) resumeButton.disableProperty -> (anim.statusProperty != PAUSED) stopButton.disableProperty -> (anim.statusProperty == STOPPED)
Weitere Beispiele werden auf GitHub beschrieben. Noch ist die Library im Aufbau, alle, die sich an der weiteren Entwicklung beteiligen möchten, heißt das XtendFX-Team willkommen.
Hinterlasse einen Kommentar