Womit am besten GUI für Cross-Platform Tool entwickeln ?

Kristatos

Lt. Commander
Registriert
Sep. 2007
Beiträge
1.564
Hey Leute,

ich brauch mal nen paar Tipps für eine Cross-Platform-App ;-)

Ich habe vor über 10 Jahren zuletzt einige Apps programmiert und seitdem
nur wissenschaftliche Programme in Processing oder für Arduino geschrieben.

Ich möchte einige Apps für den Bereich Statistik entwickeln, mit GUI und lauffähig
unter Windows/Linux und OSX.

Prinzipiell ist die Programmiersprache egal, sollte nur nicht objekt-orientiert oder von Microsoft sein,
am besten kenne ich mich aber mit C aus.

- Cross-Platform Windows/Linux/OSX Compiler
- Einfach zu bedienender GUI-Designer
- geringe Einarbeitungszeit
- IDE bzw. Compiler muss unter Linux lauffähig sein (habe mein Windows gelöscht)
- lieber QT/GTK oder Alternativen?

Was könnt Ihr mir empfehlen ?

Dank Euch !
 
Zuletzt bearbeitet:
Muss es denn eine native Anwendung sein? Heutzutage kann man (fast) alles als Webanwendung anbieten. Also HTML, CSS, JavaScript (oder alternativ TypeScript) und dann ein Backend in der Sprache deiner Wahl (Java, Python, Ruby, .NET, ...)

Für native Anwendungen führt wohl wenig an Qt oder GTK vorbei. Wobei ich bisher fast ausschließlich Qt Anwendungen über den Weg gelaufen bin.

(Und selbst Webanwendungen kann man "nativ" aussehen lassen. Wie z.B. das aktuelle Skype, auch wenn das ein ziemlich schlecht umgesetztes Beispiel ist :D )
 
Ja, soll eine kompiliertes Programm werden, evtl. Shareware. Von Webanwendungen habe ich noch die Nase voll wie diesem Joomla, wo ich über json Messwerte auslesen muss :-)

Wxwidgets kenne ich von Anwenderseite, werde ich mir mal ansehen. Sieht ja ganz vielversprechend aus :)
 
Zuletzt bearbeitet:
Joomla ist ja auch ein CMS (und dazu noch in PHP) und kein typisches Framework für eine Webanwendung :D
Ich meinte da eher sowas wie Angular mit Angular Material ( https://material.angular.io/ ) oder React. Das macht dann nicht mehr viel Unterschied zu einer nativen App.

Aber hängt natürlich auch davon ab, in welchen Sprachen du dich zu Hause fühlst.
 
Wuerde auch Electron empfehlen. Ansonsten Qt.
Und warum keie objektorientierte Sprache? Sind ja nicht alle so radikal wie Java.
 
@kuddelmuddel: Wahrscheinlich, weil ihm C am liebsten ist.
Ich habe damals an der Uni auch Leute gesehen, die ihre GUIs am Liebsten funktional in Haskell geschrieben haben :D

Ich selbst finde OOP gerade für GUIs auch extrem praktisch. Aber ist wohl nicht jedermanns Sache.
 
Haskell ? Schaue ich mir auch mal an :)

Ansonsten wird es wohl doch C mit qt werden.....

Habe mir auch noch Lazarus (Pascal) angesehen, habe aber nen Brechreiz bei der Pascal-Syntax gekriegt.
 
Kristatos schrieb:
Ich möchte einige Apps für den Bereich Statistik entwickeln, mit GUI und lauffähig
unter Windows/Linux und OSX.
Qt und Madplotlib. Wenn Du bei C/C++ bleiben willst, hast Du kaum eine andere Wahl. Aber: wie willst Du denn Qt "nur in C" verwenden? Geht das überhaupt noch?
 
Wahrscheinlich nicht, also heisst das wohl oder übel C++, naja Augen zu und durch - wird dann eine Art Mix :)
 
Kristatos schrieb:
C++, naja Augen zu und durch - wird dann eine Art Mix :)
Das ist eigentlich auch nicht besonders schlimm. Die Dateien, die mit dem Qt-Interface (und vielleicht Madplotlib) zu tun haben, sind halt C++, deine mathematischen bzw. statistischen Sachen sind in C-Dateien, möglichst unabhängig vom Interface.
 
benneque schrieb:
Joomla ist ja auch ein CMS...

Das ist nicht ganz korrekt, denn das Joomla Framework ist definitiv ein auf php basierendes Framework.

Was sich hier Crossplattform technisch schon anbieten würde.
 
@pizza: Was ist das denn für eine Aussage?

JavaScript wird auch kompiliert (wenn man z.B. V8 nutzt). Zwar erst zur Laufzeit, aber trotzdem kompiliert.

Java wird sogar mehrfach kompiliert. Ein mal von SourceCode zu ByteCode. Und dann zur Laufzeit noch mal zu Maschinen Code durch den JIT Compiler. Und bei sehr häufiger Verwendung von Funktionen oft sogar noch mal in einer besser optimierten Variante.

Du meinst wohl eher "nativ kompiliert".
 
@benneque: es beschreibt einfach die defakto realität .... bzw es war auch eher auf GTK / QT bezogen, sorry...
 
Zurück
Oben