This is a demonstration of how functional programming techniques can improve Vaadin UI code. This is realized by implementing an application UI three times:
- java7 branch contains the starting point that utilizes Vaadin 7 and Java 7.
- java8 branch contains the an improved versio utilizing various improvements available in Java 8.
- scala branch is built in Scala using the Scaladin library, which wraps the Vaadin API in Scala. DAO and logic layers remain Java 8.
- rx branch implements the business logic in a reactive way using RxJava Observables with RxVaadin. Othewise it is identical with the Java 8 version.
This demo concentrates on the UI code. There is a backend, but it is just a dummy implementation.