Over a long time I was evaluating different ways to have a toolchain for Cross platform Desktop (Windows, Linux, MacOS, Unix, Auto-Linux), for Mobile Development on IOS (IpadOS, iPhones) and for Web Applications with Database management and full performance even for 3000 parallel users. Between around 300 Libraries and Programs I was testing I found one combination which replaces not only Xojo but brings me complete new Power for Development.
While Java is flexible and the possible Java Runtimes too I selected Java 11 for the beginning and I will switch to the next LTS Version as it is out for production. So I speak about the tests but I have done them on Java 11 and on Java 17 (incubator Version) to be sure that it really works.
- Cross platform Desktop
Desktop-Development is for Java Swing the right home. Therefore I chose Java Swing for Desktop. From a later reason it was a good decision. Java Swing allows me to get my Job done. It looks all the same on all Platforms, it has a totally flexible Look and Feel System and it can build up the Menu Position for Mac if it’s wanted. As Look and Feel I choose FlatLaf from https://www.formdev.com . While Java has tons of possible libraries to use I chose Jaspersoft Free for Reports as it’s Library version is under LGPL. PDF with Apache PDF Library and with the Build In PDF functionality. So Desktop is writable without any commercial Plugin.
For INDIE Developers which are not a bigger company the mobile Development with CodenameOne is marvelous. Codename One has a structure which is very similar to Java Swing, an own Designer and a complete Build infrastructure for IOS and Android. So there is no need to build up own Build Servers for it and it works. Coding is Java and Result is native Android or native IOS. That’s what I want. With maximum of 50MB Build Jar Size the Basic Variant for 19$ per month is good enough. (Makes 221$ per year). For bigger projects the professional is around 900$ per year. Do not forget: 50 MB jar file Size is pretty big App.
I was long time searching for a provider for Web Solutions which takes care of next generation switch and helps users to work with the Software. I found it: Haulmonts jmix.io helps me to develop Java Applications for the Web. With Backends which are builded for around 700 - 1000 concurrent users, with frontend Applications which are builded for ten thousands of users as they are progressive web apps (PWA) with Socket connections and REST API. That makes fun while I have no problem with programming and can take care of my targets. jmix and Cuba project are very similar. And for the Switch from the old Cuba Platform to jmix the provide migration tools and help. That’s how I wish to get a Web 1 to Web 2 Switch. Mission is possible! Cuba Platform costs 189 $ per year for indie Developers.
- The IDE
As I am developing on Linux and Mac I was searching for a Java IDE which helps me to get the Job done instead of nerving me with nice colored somethings which are out of order. So I chosed IntelliJIdea. While I like the IDE and it is really flaming fast I decided to buy it. But that’s not needed. If you only want to build Java Applications you can use the community edition for your toolchain (do not forget to install a database Plugin while database Management is less complex when it is on Board).
With yearly Costs of 460 Euro per year for:
JFormdesigner: 50 per year (Marketplace Edition)
Cuba Platform 189 per year
Codenameone 221 per year
I have a complete Toolchain for use. If I don’t need Web I can stop with the deal and use only Open Source (I am able to write and compile but the visual Designer is gone then). I can program for all platforms and I have a complete working Solution for Development. For me it was the fundamental base for changing from Xojo to Java.
Why I wrote this here? While I firstly wrote it under a thread about a Plugin Set to demonstrate that a complete toolchain is not as expensive as Xojo is per year. And that is for real an argument to think about that what I am doing for the next years.