With SimpleFX programming is easier, programming requires less time, and programming is more fun than ever. Time-To-Market gets significantly shortened. And, because of the many brilliant concepts and metaphores in SimpleFX, your code gets short and concise. And – very important - you are automatically piloted into a style which results in high quality software. As a consequence of these points, Maintenance Costs, including testing, troubleshooting and code-extendability, are substantially positively influenced.
With SimpleFX the entry-level for a programmer is lower, but at the same time it gives the novice programmers a tool with which they can climb sky high. The reachable level of sophistication is higher than in most alternatives, and SimpleFX gives the top-notch programmers a tool with which they can realize their creativity.
SimpleFX is fully compatible and inter-operable with Java and with Scala, and – in particular with Scala – the level of program virtuosity and elegance and the chance to make efficient programs is higher than in any other common language currently on the market.
Some of them we list here:
In average you will face a reduction in code-size of about 80%(!). This means, compared to source-code written in Java/Swing your code will have around 20% of the size. Even, compared to writing in Java/JavaFX, the reduction will be substantial – around 65% - down to a third. Sometimes, the effect will be even much higher – very rarely, you will see smaller effects than that.
The numbers assume using Java-8. Compared to lower Java-versions, we see a stronger effect.
How do we know?
(a) Our team has more than a decade of experience with writing program with Java/Swing, and can therefore realistically judge.
(b) We have taken several tutorial programs written in Java/JavaFX by the best JavaFX-experts of Oracle and other companies, and migrated them to SimpleFX. The effect we then become is as described above.
You become much more concise code. Code written in SimpleFX is very easy to read and to understand. It reduces formidable amounts of boilerplate, which is to find all over the place in most Java-program, and lets you concentrate on the real issues. Operators and APIs have clear and easy-to-understand semantics.
The paradigm used by SimpleFX has the effect of reducing the need of if-statements. This reduces complexity and lowers the risk of bugs.
Deeply nested Code if often found Java-Programs. With SimpleFX you will note, that there is no need, and therefore will hardly use it. It becomes easy to avoid vertical scrolling as you read and study complex algorithms.
You will concentrate on “what” instead of “how” - the Declarative style with stimulate your focus on the real task instead of a number of distracting technicalities.
The code will let less room for so called “corner cases” - cases which happen rarely, but still require special treatments in the source-code. Those cases are often the guilty ones, as bugs occur, and the handling of them clutter the code, increases complexity and lowers readability.
SimpleFX is optimal for rapid prototyping. Prototypes can be created and grow into large solutions.
SimpleFX has the strong static type system of Scala, which avoids errors and at the same time produces the feeling of a dynamic language. Common error patterns (WeakReferences + Binding etc.) are avoided.
Write Once Run (almost) Anywhere(*). With SimpleFX you can write one piece of source-code and have it run on almost any common device.
SimpleFX applications can run on all Windows Platforms, where a Java Virtual Machine is installed.
SimpleFX applications can run on all MacOS Platforms, where a Java Virtual Machine is installed.
SimpleFX applications can run on all Linux Platforms, where a Java Virtual Machine is installed.
SimpleFX applications can run on Android devices.
SimpleFX applications can run on iOS devices, with the help of RoboVM.
SimpleFX applications can run on Raspberry Pi, as well as any Embedded Device where a Java Virtual Machine is installed.
SimpleFX applications can currently NOT run inside of Web-Browsers. There are OpenSource projects on the way, today showing running prototypes, targeting exactly this goal. But, those projects are not yet beyond prototype-level.
... which produces the following screen:
... with the following SimpleFX source-code: