The Biluna software architecture now includes the logic layer between the user interface and the data handling part.

The user interface is currently based on the Qt Widgets but will in the future include QtQuick controls. The logic classes will contain the family of QAbstractItemModel's that will be able to communicate with both the QWidgets and the QtQuick controls.

Software development is in our case learning by doing and reading how other developers make their software. We found it useful to review parts of the QtCreator source code to see how certain user interface issues have been solved. A lot of the source code of QtCreator is difficult to understand for a non-hardcore coder but it helps to give directions to a solution. It would be nice to be able to read a 'book' or documentation about the design decisions taking for QtCreator. The flexibility of the QAction's would be one thing.

We are still very much pleased with the possibilities of the Qt framework although C++ is not the easiest language. The big advantage is that you are in full control and know what software are doing. With Visual Basic it was most of the time unclear what was happening in the background. We advise to start learning C++, you will then learn other language on the fly.