c++ lernen. Wie am besten weitermachen nach Grundlagen?



  • Hallo,
    ich bin gerade dabei c++ zu erlernen. Mit der Programmiersprache C habe ich schon länger Erfahrung und habe mir nun die Grundlagen von C++ über diverse Bücher und Tutorials angeeignet. Nun stehe ich vor dem Problem nicht über simple Konsolenanwendungen hinaus zu kommen. Ich finde keinerlei Tutorials wie man in der Softwareentwicklung nach den Grundlagen am besten weiter aufbaut.

    Ich suche unter anderem Antworten auf Fragen wie:
    -wie entwickelt man größere Software wie z.B. ein Planungtool.
    -wie speichert man Daten(z.B Datenbank oder File, welchen Aufbau von Datenfiles und wie durchsucht man die gespeicherten Daten / ordnen man sie)
    - Arten und Aufbau von GUIs.
    - Womit sollte man weiter machen nach den Grundlagen und wie.

    Hilfreich wären Beispielcodes/Übungen größerer Progamme die viele Themen abdecken um richtige Software zu schreiben und nicht nur Grundlagen mit ein wenig GUI.

    Hoffe jemand hat den ein oder anderen Tipp wie ich weiter voran komme.

    Vielen Dank schon mal 🙂



  • Ich denke ein möglicher Ansatz wäre, sich etwas bestimmtes herauszusuchen, das man erlernen/entwickeln möchte, am Besten etwas, wofür man selbst Verwendung hat.

    Irgendein kleines Tool oder sonstiges. Aber nicht gleich alles auf einmal lernen wollen. Da hat man auch am Meisten Spaß/Motivation dabei. Natürlich kann Dir einer sagen "Programmier doch mal einen simplen Text Editor, oder mach ein abgespecktes MSPaint", aber es bringt eigentlich nichts, das Projekt muss dich persönlich interessieren.

    Vermutlich ist das nicht 100% was Du hören wolltest, aber das ist meine persönliche Erfahrung.

    Man findet übrigens zum Thema GUI, welche es gibt und wie sie funktionieren, viel im Netz.

    Wenn du bisher noch nie mit Dateien gearbeitet hast, würde ich anfangen mit einfachen .txt Dateien, um irgendwelche Daten abzuspeichern. Meistens macht man (ich) das so: Du entwirfst irgendeine Datenstruktur (passend zu deinem Programm) und dann schreibst du die einzelnen Datenmember in die .txt Datei (z.B. mit einem operator<< Overload für die Struktur). Also immer der Zyklus

    Programm Start -> Daten Laden -> [Prüfen!] -> Daten im RAM bearbeiten -> Daten Sichern -> Programm Ende
    

    Ich denke Du musst etwas konkreter werden, um mehr Antworten zu bekommen. Keiner wird hier mal schnell ein Buch zu GUIs verfassen.

    Hilfreich wären Beispielcodes/Übungen größerer Progamme die viele Themen abdecken um richtige Software zu schreiben und nicht nur Grundlagen mit ein wenig GUI.

    Wenn du meinst das wäre hilfreich, dann such doch mal ein Open Source Programm, welches dich interessiert, und hol dir mal den Quellcode und schau ihn Dir an. Die Auswahl ist nahezu grenzenlos.



  • Weil du GUIs angesprochen hast. Die Frage habe ich mir auch vor kurzem hier gestellt. Mir wurde empfohlen sich mal QT anzuschauen. In meinem Programmierbuch, wird dieses auch kurz angesprochen. Vielleicht schaust du dir mal ein paar Videos darüber an. Es gibt auch viele Bücher die sich direkt um QT und C++ drehen. Hier im Forum gibt es auch direkt einen Bereich zur GUI Programmierung. Da findest du noch einige Alternativen zur GUI Programmierung
    . Zu dem Rest kann ich nur meinem Vorredner recht geben. Programmiere etwas was du selbst nutzt und vielleicht auch für andere hilfreich ist. Bei mir ist es immer so, dass mir im Alltag manchmal Dinge einfallen wo ich überlege ob ich sie umsetzen kann. Dann probiere ich es einfach aus und lerne dadurch auch immer neues dazu.
    Anbei muss ich sagen, dass ich selbst noch Anfänger bei C++ bin. Also keine Garantie auf meinen oben stehenden Text 🙂



  • Für GUIs s. z.B. [HOWTO] Welches Toolkit für GUIS?

    Und größere Programme entwickelt man mit klassischem Software Engineering, d.h. die Programmierung ist nur ein Teil des Gesamtprozesses - verstehen und entwickeln muß man eine vernünftige Softwarearchitektur und geeignetes Software Design.
    Programmiertechnisch ist es wichtig, das Gesamtprogramm in sinnvolle Einzelteile (Module) aufzuteilen.

    Ich weiß, so etwas allgemeines wolltest du nicht als Antwort haben, aber es gibt kein Universal-Beispiel/Tutorial dafür.



  • Wenn du GUIs für Windowssysteme relativ idiotensicher programmieren willst, nutz C#. Wenn du mit C++ hantieren willst, würd ich dir QT empfehlen. Kauf dir Bücher!


Log in to reply