Welche Programmiersprache für Desktop Anwendungen?
Hallo,
ich bin absoluter Neuling was Programmieren angeht, hab mir allerdings aufgrund meiner vorhandenen Zeit und daraus entstehender langeweile vorgenommen mich mit dem Programmieren zu beschäftigen.
Ein Projekt habe ich mir auch schon ausgedacht, was (hoffentlich) nicht allzu komplex ist. Das ganze soll als Anwendung auf Windows laufen.
Die Anwendung soll:
- (manuell) eingegebene Daten speichern und abrufen,
- Rechnungen mit den jeweiligen Daten durchführen
- Ergebnisse der Rechnung wiedergeben
Mein Problem ist nun die Auswahl der Programmiersprache. Ich weis nicht welche am idealsten dafür ist und wie ich am besten beginne. :D
Ich hoffe, ihr könnt mir helfen. LG
4 Antworten
C#, das ist Nr. 1 auf Windows, läuft aber auch auf Linux und MacOS.
Und für die UI nutzt Du WPF, das läuft bisher aber nur auf Windows, für die anderen Betriebssysteme gibt's andere Frameworks.
(Video-) Tutorials taugen nichts, vergiss das ganz schnell wieder.
Lies lieber ein gutes Buch.
Allerdings solltest Du dich auch gleich davon verabschieden, dass das ein kleines Projekt für nebenher wird. Sowas kann Monate bis Jahre dauern, je nachdem, wie schnell Du lernst.
Danke für den Tipp.
Ja, das dachte ich mir schon. Ich hab schon seit längerem lust darauf und ich hoffe die Motivation bleibt vorhanden :)
Hierfür kommen verschiedenste Programmiersprachen infrage. Java lässt sich relativ einfach erlernen, graphische Oberflächen lassen sich dank JavaFX oder Swing ebenfalls einfach entwickeln und zudem sind die entstehenden Programme plattformunabhängig, d. h. sie laufen auch auf anderen Systemen als Windows. Für die angedachte Anwendung ist Java auf jeden Fall eine absolut angemessene Wahl.
Danke für deine Antwort.
In die Richtung Java ging auch meine Vorstellung. Konnte mir aber nach den ersten Youtube Tutoriuals nicht vorstellen, dass das was wird. :D
JavaFX oder Swing muss ich aber extern dazu installieren oder?
Swing kommt direkt mit dem JDK gebündelt, JavaFX in neueren Versionen nicht mehr – kann aber sehr einfach per Maven eingebunden werden. Ich empfehle eher ein Buch als Videos. Die Bücher vom Rheinwerk-Verlag kann ich persönlich empfehlen.
Danke. Auf den Rheinwerk-Verlag bin ich auch schonmal zufällig gestoßen. Ich glaub da gab es online sogar einige Bücher Kostenlos. Vielleicht lese ich mal rein und entscheide ob ich die Bücher dann kaufe. :)
Wenn ihr hier auf Bücher schwört, dann wird da ja schon was dran sein ;p
Ein Kommentar zu Swing: Meiner Erfahrung und den Beobachtungen auf dieser Plattform (und auch in einigen Foren) zu Folge ist Swing keineswegs als einfach zu bewerten. Die meisten Noch-Programmier-Neulinge tun sich mit dem Erstellen vernünftiger Layouts sehr schwer (was - das muss man schon zugeben - ziemlich umständlich werden kann), Basiskonzepte werden durchgehend missachtet. Da OpenJFX (das neue JavaFX) moderner (aufgebaut) ist, würde ich bei einer Wahl für Java dir empfehlen, doch auch eher zu diesem Toolkit zu tendieren.
Das ist gut zu wissen. Danke für den Tipp :)
Ich empfehle Python. Diese ist leicht und schnell erlernbar. Hier die benötigten Downloads für Windows:
- Python: https://www.python.org/ftp/python/3.8.2/python-3.8.2-amd64.exe Ich empfehle alle Komponenten zu installieren. Dann wird Python auch zur Windows PATH Umgebungsvariable hinzugefügt.
- Mu - das ist ein Editor für Python: https://github.com/mu-editor/mu/releases/download/1.0.3/mu-editor_1.0.3_win64.exe Dort kann man den Python-Programmcode eingeben und ausführen. Der Code wird syntaxhervorgehoben dargestellt. Syntaxfehler werden in Echtzeit angezeigt.
Python-Programme kann man auch in EXE-Dateien kompilieren die dann selbstständig ohne Python lauffähig sind. Das geht so: Zuerst die Windows Eingabeaufforderung starten. Dann dort folgenden Befehl eingeben:
- pip3 install pyinstaller oder pip install pyinstaller
Das installiert die benötigten Python-Erweiterungen die dazu nötig sind.
Und so kompiliert man ein Python-Programm in eine EXE-Datei: Zuerst erstellt man sich einen Ordner. Ich empfehle als Name Python-Projekte. Dort speichert man sich das geschriebene Python-Programm ab. Dann geht man in diesen Ordner und ruft dort die Windows Eingabeaufforderung oder Powershell auf. Jetzt folgenden Befehl eingeben:
- pyinstaller programmname.py
Das erzeugt im Ordner Python-Projekte 3 weitere Ordner. Einmal build dist und __pycache__. Die Ordner build und __pycache__ können nach dem Kompilieren gelöscht werden. Im Ordner dist befindet sich ein weiterer Unterordner und im diesen die programmname.exe und weitere Dateien und Unterordner. Das zusammen ist dann selbstständig ohne Python lauffähig.
Als letzten Schliff kann man dann das ganze mit Inno Setup https://jrsoftware.org/download.php/is.exe in eine Installationsroutine (setup.exe) verpacken. Dazu muss man bei seinem Inno Setup Projekt den ganzen Ordnerinhalt von dist (mit der ganzen Unterordnerstruktur) hinzufügen.
Hier ein Python-Tutorial: https://www.python-kurs.eu/python3_kurs.php Vorkenntnisse sind keine erforderlich. Es gibt dazu auch Beispielcodes.
Wenn man das durchgearbeitet hat, dann empfehle ich dieses Tutorial: https://www.python-kurs.eu/python_tkinter.php Damit lernt man grafische Oberflächen mit Python zu erstellen. Auch dort gibt es Beispielcodes.
Wenn man fortgeschritten ist, kann man das durcharbeiten: https://www.python-kurs.eu/system_programmierung.php Das ist Systemprogrammierung mit Python. Ebenfalls mit Beispielcodes.
Ich denke, mit C#, Delphi oder VB.NET kommst du sehr schnell zu einer Lösung. Alle drei Sprachen steht ein umfassendes Toolkit zur Verfügung, rasch grafische Anwendungen zusammenzustellen und mit Logik auszustatten. Extrem schwer zu erlernen sind sie auch nicht.
Verschiedene Lernquellen zu C# findest du hier. Bestenfalls nutzt du eines der empfohlenen Bücher und beginnst zunächst mit Konsolenanwendungen, um dich besser auf die Grundlagenthemen konzentrieren zu können.
Für VB.NET gelten fast die gleichen Lernquellen, lies zudem hier. Anzumerken wäre, dass VB.NET zwar einfach zu erlernen ist, aber in den Planungen von Microsoft nicht mehr so eine große Rolle spielt.
Bezüglich Delphi könnte ich dir jetzt nicht direkt Lektüre empfehlen (weil ich keine spezielle kenne). Online-Anlaufstellen sind jedoch die offizielle Entwicklerseite und delphi-treff.de.
Zu den genannten gibt es natürlich noch viele andere Optionen.
Ich danke dir für deine ausführliche Antwort! Hilft mir sehr. LG
Danke, das werde ich mir mal anschauen. Ich hoffe, ich finde genug "Noob-freundliche" tutorials :D