Welche Programmiersprache für die Entwicklung einer Desktop-App?
Hallo zusammen,
im Rahmen meiner Bachelorarbeit werde ich eine Desktop-App entwickeln zur unterstützung einer Kapazitätsüberprüfung. Wichtige Inhalte der Anwendung werden Datenbankzugriffe sein. Ich würde das ganze gerne in einem "modernen" Design bereitstellen - ähnlich wie im folgenden screenshot:
Anfangs hab ich mir überlegt Python zu verwenden, jedoch bin ich von der GUI-Programmierung und deren Möglichkeiten nicht überzeugt. Was wären eure Empfehlungen um das Projekt umzusetzen? (Klassisch Java oder doch Bibliotheken wie React?)Vorab Vielen Dank für alle Ratschläge!
LG
5 Antworten
Electron wurde bereits genannt. Damit kannst du in einer Chromium Instanz eine Website laufen lassen. Ist recht beliebt, da andere Sprachen keine brauchbare Unterstützung für Plattformunabhängigkeit bieten. Persönlich halte ich wenig von Electron.
Java wurde auch genannt. Du kannst mit JavaFx sehr schöne Oberflächen erstellen und Java ist plattformunabhängig. Java ist leicht zu erlernen.
Zudem gibt es Skriptsprachen wie die von dir genannte Sprache Python, die mit GUI-Toolkits wie wxWidgets, GTK oder Qt umgehen kann.
Von C++, wie manche hier empfehlen, rate ich ab. C++ ist furchtbar kompliziert und hat, da es unbedingt abwärtskompatibel zu C sein will, die Eigenschaften von C geerbt, die für moderne Entwicklung von Desktop-Anwendungen aber nur hinderlich sind. Ich mag C++ nicht. Für die systemnahe Programmierung reicht C vollständig aus und für die Entwicklung von Desktop-Apps bieten sich andere Sprachen an, die besser als C++ sind.
Ich weiß nicht wie komplex und umfangreiche diese Datenbankzugriffe, von denen du sprichst, werden. Falls es umfangreich wird, würde ich dir zu Java + Hibernate raten.
Die Datenbankzugriffe sind nicht sehr umfangreich. Wie sieht es denn mit Datenvisualisierung in Java aus ?
Wenn Du es Dir verdammt einfach machen willst, nimmst Du einfach HTML und CSS und verwendest das Electron Framework von GitHub. Damit ist Dein Vorhaben eigentlich ratzfatz umgesetzt. Welche Programmiersprache Du dann für die Logik verwendest, ist Dir eigentlich selbst überlassen. Das Beispiel von oben kannst Du mit ganz einfachen Basics zusammen klöppeln. 😉
Kein Ding, gern geschehen. Auf der Website von Electron kannst Du Dir auch anschauen, welche Apps alles schon damit umgesetzt wurden. Das Coole daran ist, das Du auch mit "einfachen" Webtechnologien auskommst. :)
Das hängt auch ein bisschen vom OS ab, für das du programmierst. Wenn es sich nur an Windows Benutzer richtet, ist C# oder auch C++ ideal, da du dich damit leider nicht auskennst bleibt dir wohl noch fast nur noch Java oder Kotlin übrig.
Wenn du C++ und C# meiden möchtest, bleibt ja nur noch Java.
Ich würde Java oder C++ in Verbindung mit qt verwenden.
Werd ich mir mal genauer anschauen, Danke für den Tipp!