Einstieg in GUI Programmierung

SilentJim

Banned
Registriert
Nov. 2020
Beiträge
7
Vorweg zu nehmen, ich habe reine C# Basiskenntnisse(Typen, Klassen, usw.) und schon ein paar Grundlagen in C++.


Auch PHP, HTML, CSS Grundkenntnisse sind vorhanden (auch wenn es vlt. nicht in diese Richtung geht.). Möchte damit eigentlich nur ausdrücken, dass ich die Denkweise doch ein wenig schon beherrsche und nicht komplett bei 0 anfangen müsste.





Nun bin ich nicht schlüssig, ob ich weiter auf C# setzen soll, um GUI Programme zu schreiben. Allerdings würde ich diesen gern auch anderen (nicht Windows Nutzern) zur Verfügung stellen.





An dieser Stelle könnte ich Xamarin verwenden (wo ich derzeit noch keine Erfahrung habe) oder aber ich nutze C++ mit QT (wo ich auch erst mich einarbeiten müsste. Für die Lizenz wäre ich bereit auch die Lizenzgebühr für Unternehmen unter 2500 Euro im Jahr zu zahlen.





Mein Sohn spielt derzeit ein bisschen mit Arduino herum, um ihm da helfen zu können wäre es dann ja besser ich würde C++ beherrschen. Oder ist es da ausreichend, wenn ich mir die Grundlagen von C++ anschaue


(und mit meinen Kenntnissen welchen ich aus de C# Programmierung habe profitiere?)





Vorrangig geht es mir nicht um komplexe Programme, sondern wird es eher in Richtung Helfer für den Alltag gehen. Also nichts in Richtung Photoshop, sondern eher in Richtung Taschenrechner. Weis nicht wie ich es am günstigen rüber kriege.





Eigentlich heute ich ja auch eine Idee für eine IOS App (Swift bringe ich (noch) nicht) aber das kann warten.

Was würdet ihr mir empfehlen? Will das ganze nur privat machen, nichts Berufliches. Oder empfehlt ihr sogar ein komplett anderes Vorgehen? Ideen!?

Vielleicht gibt es ja jemand in der Nähe von Dresden, der breit ist sich mit mir da auseinander zu setzen. Ihr könnt auch gern eine PN schicken.

PS:Ich möchte keine WebApp bauen
 
Ok, dann jetzt die Frage, warum du keine WebApp entwickeln möchtest?
 
  • Gefällt mir
Reaktionen: kim88, ReignInBlo0d und KitKat::new()
Hi,
zu Xamarin und QT kann ich nicht viel sagen, da habe ich noch nichts bzw lange nichts mehr gemacht. Wenn du allerdings schon etwas Erfahrung mit Webtechnologien hast, dann wäre Electron vielleicht etwas für dich?
 
Was du auch machen kannst, ist den Core der Anwendung in deiner Lieblingsprogrammiersprache zu entwickeln und dann die GUI jeweils nativ draufzupacken.
Wenn Web doch in Frage kommt: mal einen Blick auf React Native wählen. Dort hast du auch die Option auf native GUI-Elemente.
 
Ich möchte keine WebApp entwickeln, da ich meine Programme oftmals auch auf Rechner einsetzen will/muss, wo es kein Internet gibt. Sie soll mir ja auch auf Arbeit ein wenig die Arbeit erleichtern.

@KitKat::new()
Wie muss ich mir das Vorstellen mit GUI Nativ darauf packen?
 
SilentJim schrieb:
Ich möchte keine WebApp entwickeln, da ich meine Programme oftmals auch auf Rechner einsetzen will/muss, wo es kein Internet gibt. Sie soll mir ja auch auf Arbeit ein wenig die Arbeit erleichtern.
Das kannst du ja trotzdem.
Entweder indem du
1) sie als PWA installierst (über den Browser - läuft dann offline)
2) sie als native Applikation (mit JS Code) kompilierst (ReactNative sollte das können?)
3) sie über Electron laufen lässt (Container für WebApps)

SilentJim schrieb:
Wie muss ich mir das Vorstellen mit GUI Nativ darauf packen?
Ein natives Programm mit dem nativen GUI-Toolkit des Betriebssystem nutzt dein GUI-loses Programm als Bibliothek.
 
SilentJim schrieb:
[...] oder aber ich nutze C++ mit QT (wo ich auch erst mich einarbeiten müsste. Für die Lizenz wäre ich bereit auch die Lizenzgebühr für Unternehmen unter 2500 Euro im Jahr zu zahlen.

Die Lizenz bräuchtest du besonders am Anfang nicht.
Und am Ende schon gar nicht, wenn du Qt nur für Hobby-Projekte nutzt.
Mehr findest du Hier: https://www.qt.io/faq/tag/qt-open-source-licensing?hsLang=en

Mit dem Qt-Creator hättest du dazu auch gleich noch eine sehr brauchbare IDE zum Entwicklen in C++, samt Designer für deine Qt-GUI.
Einarbeiten musst du dich da natürlich anfangs auch immer noch, aber es macht den Einstieg deutlich einfacher.
 
Wenn ihr Euch zwischen den beiden entscheiden müsstet? Wozu würdet ihr gehen?
Das ich mich einarbeiten muss, bin ich mir bewusst.
Was hat mehr Zukunft? Was denkt ihr?
 
Zum Anfreunden an QT kannst ja auch erst mal was mit Python machen. Damit bekommst du sehr schnell etwas brauchbares hin. Dazu gibt es auch den QT Designer, wo man sich schön die GUI zusammen stöpseln kann.
 
SilentJim schrieb:
Wenn ihr Euch zwischen den beiden entscheiden müsstet? Wozu würdet ihr gehen?
Das ich mich einarbeiten muss, bin ich mir bewusst.
Was hat mehr Zukunft? Was denkt ihr?

Die Frage ist schwer zu beantworten und eigentlich kannst du dazu nur selber die Antwort liefern.
Ganz generell werden dich wahrscheinlich alle genannten Ansätze zum Ziel führen.

Nimm das, was du interessanter findest.
Dann hast du meist auch mehr Motivation an den Projekten festzuhalten und sie auch tatsächlich zu Ende zu bringen.
 
Ich habe die längste Zeit meines programmierenden Lebens im Backend verbracht und das Frontend nach diversen Versuchen gemieden. Aktuell entwickle ich eine Electron app mit vue, und das macht im Ansatz sogar Spaß, weil es wesentlich flexibler und dynamischer erscheint als alles, was ich mit Java und C# bislang ausprobiert hatte. Nimm das nicht als Empfehlung, sondern als Datenpunkt. React native ist vermutlich für native Anwendungen besser als vue.
 
  • Gefällt mir
Reaktionen: KitKat::new()
Wenn es nur kleine Anwendungen sein sollen ist React dann nicht überdimensioniert? Da würde doch beispielsweise auch Node.js mit Express und HTML/CSS reichen? GUI hab ich bis jetzt mit Java gemacht( Swing und Fx zum lernenn, macht aber so gar kein Spaß), mit Angular und halt mit Node.js+Express+Html/Css. Angular ist auch überdimensioniert meiner Meinung nach. Habe mit dem Rest der hier aufgezählt wurde aber auch keine Erfahrung.
 
Ich bin C++-Entwickler und habe eine Weile einiges mit Qt gemacht. Ich wuerde Qt waehlen, wenn ich weiss, dass die Applikation in C++ geschrieben wird. Finde aber auch einen Ansatz spannend, die Logik in C++ zu schreiben und die GUI mit Electron/JS oder auch Flutter zu machen.

Wenn das eine Anwendung wird, die kein C++ benoetigt oder beguenstigt, dann wuerde ich auch zu ner WebApp/Electron/JS tendieren und mir das zuerst ansehen.
 
Zurück
Oben