Sometimes it's better to show real-world applications than writing about features and possibilities.
VisionX is an awesome platform and in this blog posting I want to show you some of our customer applications - as good as possible!
The first one is SNOWsat Maintain. Our customer is Pistenbully. There are some official details available on our customers website. A short YouTube video, in German, as well.
The prototype of an S5 audit administration tool was created by Dr. Werner Smekal. It's not production ready, but the screenshot looks really clear.
A really cool scientific project management software was created by TU Darmstadt. Really impressive.
Some useful links if you plan to start some experiments with JavaFX for embedded devices like Raspberry Pi or BeagleBoard-xM:
And finally, a very useful and detailed howto from Gerrit Grunwald: Who let the dogs out
Jetty for Android devices: http://code.google.com/p/i-jetty/
With this implementation it should not be a problem to run the JVx server via http(s) on Android devices. Of course, it is possible to run JVx as DirectServer, but why not via http?
We have not test JVx with i-jetty, but contact us if you want to try it.
JVM technologies for 2011 - Voting
Very interesting postings, and yes - JVx is ready for Desktop Applications
Einen etwas anderen Ansatz als JVx, um UIs mit unterschiedlichsten Technologien zu erstellen, verfolgt Jspresso.
Es handelt sich um ein Open Source Framework für die Erstellung von n-Tier Anwendungen wobei am Server auf Spring in Kombination mit Hibernate zurückgegriffen wurde. Die unterschiedlichen UI Implementierungen unterscheiden sich teils sehr stark voneinander und wirken etwas sperrig. Die Lösungen sind teilweise sehr interessant, es fehlt jedoch häufig an Erleichterung, da sehr viel Codierarbeit notwendig ist um z.B die Daten von der Datenbank ans GUI zu transportieren.
Um native mobile Apps zu entwickeln sind die jeweiligen SDKs der Hersteller nötig. Eine alternative Entwicklungsmöglichkeit bietet das Open Source Framework PhoneGap. Die Apps werden mit HTML, CSS und Javascript entwickelt und native zur Verfügung gestellt.
Es ist zwar noch etwas früh um von einem Framework zu sprechen, dennoch klingt der Projekt Antrag - Sapphire - recht interessant. Die weitere Entwicklung bleibt jedoch abzuwarten.
Dennoch wird anhand des Antrages deutlich, daß die Applikationsentwicklung einfacher werden muss. Und mit JVx existiert bereits eine Lösung die genau das ermöglicht. Ob die Abhängigkeiten zu den Eclipse Frameworks nicht eher ein Nachteil, hinsichtlich der Einfachheit ist, wird die Umsetzung zeigen.
Bei der Umsetzung unserer WebUI stoßen wir immer wieder auf interessante Tools und Frameworks. Zwei davon sind aufgrund des Ansatzes sehr interessant:
- OpenSAGA
Die Ziele des Frameworks sind sehr verwandt mit denen von JVx: geringer Einarbeitungsaufwand, Technologieabstraktion, Standardplattform.
- OpenWGA
Unter der Haube steckt ein Framework zur Erstellung von Web Applikationen. Damit erstellt wurde ein CMS. Der Ansatz wirkt sehr frisch, allerdings gibt es eine spezielle IDE, eine spezielle Script Sprache usw. Man muss sich also aufwändig einarbeiten und ist dann recht schnell abhängig.
Eine native iPhone Anwendung setzt nicht nur Objective-C Know How voraus sondern auch eine spezielle Entwicklungsumgebung sowie Mac OS. Doch nicht immer muss es eine native App sein. Wenn auf die Kamera und die Hardware Beschleunigung verzichtet werden kann, stehen sehr gute JavaScript APIs zur Verfügung.
Ein brandneues API steht mit jQTouch bereit.
Zum Wochenausklang einige interessante Links für mobile Anwendungen:
- JSON Serializer
Ein noch recht junges Projekt für die Objektserialisierung mit JSON.
- JFXtras
Im Rahmen des Projektes werden Erweiterungen für Java FX entwickelt. Unter anderem neue Komponenten und Effekte.
- AiCharts (Kommerziell)
Eine mächtige Bibliothek für die Erstellung von Charts unter Android.
Da wir bei SIB Visions nicht die einzigen sind, die ein Application Framework entwickeln, ist ein Blick auf die vorhandenen Lösungen ganz interessant. Hierbei handelt es sich nicht um eine Bewertung sondern vielmehr um eine Auflistung und persönlicher Eindrücke.
- Eclipse Riena (Java, Open Source)
Ein Framework aufbauend auf OSGi/Equinox um Multi Tier Applikationen zu erstellen. Aufgrund der starken Abhängigkeit zu Eclipse Projekten setzt der Einsatz dieses Frameworks sehr viel Know How voraus. Zwar gibt es einiges an Dokumentation, doch diese zeigt bei weitem nicht alle Details. Die Einarbeitung geht recht schnell doch bei den ersten Problemen kann man nur auf die Dokumentation oder die Community vertrauen. Um Anwendungen zu erstellen muss einerseits viel konfiguriert (XML) und andererseits muss an den richtigen Stellen der passende Code eingesetzt werden. Weiters müssen noch allerlei Bibliotheken eingesetzt werden um mit Datenbanken zu arbeiten. Bei umfangreichen Projekten sind Wartungs- und Einarbeitungsaufwand sehr hoch anzusetzen. Außerdem werden Projekte schnell sehr umfangreich, ohne bereits die notwendigen Funktionen umgesetzt zu haben.
- EclipseScout (Java, Open Source)
Ist unabhängig von Riena, und wird auch zum Erstellen von Multi Tier Applikationen verwendet. Entwickelt wird mit einem Eclipse Plugin. Ohne dieses Plugin ist es nur mit sehr viel Know How möglich eine Applikation zu erstellen. Ist allerdings ähnlich komplex als Riena zu sehen.
- XDev (Java, Kommerziell und Open Source)
Ein RAD Tool zum entwickeln von 2 Tier Java Applikationen mit JDBC Zugriff auf Datenbanken. Inkludiert eine eigene Skript Sprache für Actions. Bringt die Standard Swing Komponenten und einige spezielle Controls mit. Die "IDE" ist etwas gewöhnungsbedürftig. Der generierte Source Code ist nur schwer wartbar.
- Habanero (.NET, Open Source)
Ist zwar Open Source, doch an Informationen gelangt man nur nach einer Registrierung. Einsetzbar für die Erstellung von klassischen 2 Tier Applikationen. Die Datenbank wird mit XML Mapping "nachgebildet". Die Controls sind eher schlicht und Tabellen editiert man mit Formular Popups.
- eXpressApp Framework (.NET, Kommerziell)
Bei DevExpress handelt es sich sowohl um einen Komponenten als auch um einen App Framework Entwickler. Das Framework wirkt sehr umfangreich und bietet sehr viel Funktionalität. Ein klassisches .NET Produkt.
- MX-Frame (.NET, Kommerziell)
Das Komplettpaket trumpft mit vielen GUI Komponenten auf und bietet auch einiges an Funktionen. Leider benötigt man ein Client, Developer und Server Produkt. Anhand der Dokumentation und den Informationen des Herstellers scheint der Komplexitätsgrad sehr hoch und die Einarbeitungszeit dementsprechend.
- QAFE (Java/GWT/XML, Kommerziell)
Dieses Framework tanzt etwas aus der Reihe, ist aber interessant weil damit lt. Hersteller die Konvertierung von Oracle Forms Applikationen zu Multi Tier Anwendungen möglich sein soll. Leider finden sich nur wenige Informationen und auch die Demos zeigen nur einen groben Überblick. Die Möglichkeit große Forms Applikationen zu konvertieren wäre interessant, da dies ein absolut mögliches Einsatzgebiet für JVx ist.
Im Gegensatz zu den anderen Open Source Lösungen ist JVx ein sehr schlankes Framework und kann auch ohne IDE Plugins entwickelt werden. In JVx ist bereits alles integriert um Datenbank Anwendungen zu erstellen, ohne auf weitere Bibliotheken angewiesen zu sein. Weiters können Unit Tests ohne Umwege erstellt und angewandt werden. Und es wird auch kein eigener Development Modus benötigt um zu entwickeln. Aufgrund der engen Bindung zur Datenbank fallen auch Konfigurationen wesentlich einfacher bzw. überhaupt weg. Das macht sich auch bei der Wartung bemerkbar.