R
Jetzt wollte ich fragen, ob ich mit dem Wissen des Buches auch grafische Benutzeroberflächen programmieren kann?
Sagen wir mal so, möchtest Du richtig Aufwendige Dinge programmieren (GUI's, DirectX und Konsorten), dann sind Deine C++ Kentnisse, die DU hoffentlich mit Konsolenprogrammierung erlernt hasst, die absolute Basis.
Einige Dinge wirst weniger intensiv nutzen, einige mehr, je nach framework was halt verwendest. Aber brauchen wirst du es definitiv.
Zu dem C++ Basiswissen kommt dann noch
- das progarmmiertechnische Wissen über das framework
- von C++ teilweisse Abweichendes Design
- linker, versionsspezifische Probleme
- Betriebssystem-Besonderheiten
- evtl.technisches Fachwissen (je nach Aufgabenstellung).
Wenn Du dazu entsprechende Dokumentationen liesst, wirst die C/C++ Grundlagen aus dem FF können muessen, sonst verstehst ned mal die Einleitung der Dokus
Was sind denn jetzt GENAU Bibliotheken!
Bibliotheken eigentlich sind Code-Anteile, die expliziet zusammengepackt werden, das mehrere Progs sie verwenden können.
Sie sind eigentlich eine wesentliche Basis für "Wiederverwendbarkeit" von Code.
Bei kleineren, sehr auf den Anwendungsfall bezogenen Lösungen, spricht man von Bibliotheken.
Z.B die STL ist eine Bibiothek.
Bei groesseren, generischeren Lösungen, die Dir eine Gewisse Struktur aufzwingen, spricht man auch von Frameworks.
http://de.wikipedia.org/wiki/Framework
Wenn Du jetzt z.b. unter windows eine Oberflaeche bauen woelltest ...
ohne Biblios /Frameworks muesstest du das mit der WINAPI machen, C-Schnittstelle.
Die verwendung eines grafischen Frameworks minimiert Deinen Programmieraufwand extrem. Weis eben scho viele eh oft verwendete Dinge umgesetzt wurden (z.b. immer wieder verwendete Dialoge, etc) ...
Wobei die Auswahl des richtigen Frameworks fast genau so eine grosse Kunst ist, wie Programmieren
Edit:
Und ja, die Qt ist definitiv eine Bibliothek! Wenn DU sie fuer GUI Dinge einsetzt (man kann QT auch nur für low level Dinge verwenden), dann baut sie dir nen "Rahmen" / ein Grundgerüst auf, an das Dich auch bissi richten musst. Deshalb ist die Qt in dem Fall auch nen Framework.
Andere C++ relevante GUI Frameworks sind z.b.
(Betriebssystem-orientierte Oberflaechen mit Controls)
- wxWidgets
- Gtkmm
- Mfc
- .Net (wenn man managed C++ noch als Standard c++ betrachtet )
...
Bei nativen Grafik Bibliotheken / Frameworks, die auf bloses Zeichnen aus sind, spricht man auch von Grafik-Engines.
- SDL
- Irrlicht
...
Ciao ...