Lohnt sich Charles Petzold?



  • Sebix schrieb:

    Nun meine Frage: Ist das Buch für mich als Anfänger in Sachen WinAPI und außerdem DevC++-Nutzer lohnenswert?

    Wenn Du in DevC++ eingearbeitet bist, mußt Du beachten, daß die Dateien evtl anders heißen. Ansonsten kann man Petzold darauf gut verwenden.
    Bezogen auf das Betriebssystem ist Petzold natürlich etwas veraltet. Trotzdem: Die Programmiertechniken und API-Funktionen sind auf XP oder ME die selben.
    Petzold behandelt die Windows-Programmierung sehr umfassend und ausführlich- mit einer Ausnahme: Common Controls (Symbolleisten, Edit-Controls, List-Views ect.). Aber das Buch hilft, die WinAPI zu verstehen. Den Rest kann man sich im Internet zusammensuchen (Ich habe es allerdings umgekehrt gemacht... 😃 )



  • Dev-C++ ist veraltet.



  • dev schrieb:

    Dev-C++ ist veraltet.

    So ist es, alternativ fällt mir grade übrigens noch Code::Blocks ein 😉 .



  • Sebix schrieb:

    ich hab mich ein wenig mit der WinAPI beschäftigt, möchte jetzt komplett einsteigen und dazu auch ein Buch als Leitfaden haben. Dabei fiel mein Blick auf "Windows Programmierung" von Charles Petzold, welches scheinbar auch durchweg gute Kritiken eingeheimst hat. Jedoch hab ich an verschiedenen Stellen gelesen, dass das Buch vor allem für die schon etwas betagten Windows 95/98/NT ausgelegt ist.

    Nun meine Frage: Ist das Buch für mich als Anfänger in Sachen WinAPI und außerdem DevC++-Nutzer lohnenswert?

    Ob es zukunftssicher ist, ist freilich eine andere Frage, aber wenn du dich ernsthaft mit der Win32-Programmierung beschäftigen willst, ist der Petzold auf jeden Fall eine große Hilfe. Daß das Buch für Windows 98 und NT 4/5 Beta geschrieben wurde, sollte kein Hindernis darstellen, da sich im Wesentlichen nichts verändert hat. Insbesondere wenn du dein System durch und durch verstehen lernen willst, lies den Petzold - es lohnt sich.



  • Bei mir steht das Buch auch irgendwo rum. Ich finde, dass es insgesamt sehr interessant ist und viele Beispiele und gute Erklärungen bietet. Aber ich würde dir empfehlen, die englische Version zu lesen, da sie Übersetzung teilweise nicht gelungen ist ("Konsequent" statt "deshalb"). Mich stört die Tatsache, dass es für 98/NT ist, weniger, als die, dass es in reinem C und nicht in C++ geschrieben ist.



  • Danke für die Antworten. Und ja, ich möchte ernsthaft in die Win32-Programmierung einsteigen. Deshalb werde ich mich mal bei eBay nach dem Buch umschauen.

    kynarion schrieb:

    Bei mir steht das Buch auch irgendwo rum. Ich finde, dass es insgesamt sehr interessant ist und viele Beispiele und gute Erklärungen bietet. Aber ich würde dir empfehlen, die englische Version zu lesen, da sie Übersetzung teilweise nicht gelungen ist ("Konsequent" statt "deshalb"). Mich stört die Tatsache, dass es für 98/NT ist, weniger, als die, dass es in reinem C und nicht in C++ geschrieben ist.

    In wie fern ist das nachteilig fürs lernen?



  • @kynarion:

    kynarion schrieb:

    [...] dass es in reinem C und nicht in C++ geschrieben ist.

    Das ist doch wohl klar oder ?! WinAPI ist vollständig C-basiert.

    @Sebix:

    In wie fern ist das nachteilig fürs lernen?

    Naja C++ ist objektorientiert, C eben nicht. Eine objektoriente Programmiersprache hat viele Vorteile. (Siehe einfach in Wikipedia zu C++ ➡ http://de.wikipedia.org/wiki/C++).



  • CodeFinder schrieb:

    In wie fern ist das nachteilig fürs lernen?

    Naja C++ ist objektorientiert, C eben nicht. Eine objektoriente Programmiersprache hat viele Vorteile. (Siehe einfach in Wikipedia zu C++ ➡ http://de.wikipedia.org/wiki/C++).

    Stimmt schon- aber um eine C-basierte API zu lernen, macht C++ nicht allzuviel Sinn. Neben der Struktur der API muß das OOP-Konzept verstanden werden. Das wäre der zweite Schritt vor dem ersten.



  • An irgendeiner Stelle schreibt Meister Petz sogar selbst, dass er es schade findet, in reinem C schreiben zu müssen, da man an dieser Stelle eine so schöne Klasse schreiben könnte.



  • kynarion schrieb:

    Aber ich würde dir empfehlen, die englische Version zu lesen, da sie Übersetzung teilweise nicht gelungen ist ("Konsequent" statt "deshalb").

    Die Übersetzung fand ich eigentlich ganz gut (abgesehen von ein paar Flüchtigkeitsfehlern im Satzbau). Allerdings in Unkenntnis des Originals...

    kynarion schrieb:

    Mich stört die Tatsache, dass es für 98/NT ist, weniger, als die, dass es in reinem C und nicht in C++ geschrieben ist.

    Das Buch ist allerdings eines der Musterbeispiele dafür, wie sauber man mit C programmieren kann. Die meisten der Beispielprogramme sind weit objektorientierter als vieles, was ich in C++-Büchern gelesen habe. Oder auch frei nach Bjarne Stroustrup: "Jedes Programm von Charles Petzold ist ein C++-Programm."
    🙂



  • audacia schrieb:

    Die meisten der Beispielprogramme sind weit objektorientierter als vieles, was ich in C++-Büchern gelesen habe.

    Wie bitte?! Ist nicht Dein Ernst, oder ? 😮
    Kannst Du C++ ? - Dann solltest Du wissen, das diese Codes NICHT annähernd oo. sind.

    Elektronix schrieb:

    Stimmt schon- aber um eine C-basierte API zu lernen, macht C++ nicht allzuviel Sinn. Neben der Struktur der API muß das OOP-Konzept verstanden werden. Das wäre der zweite Schritt vor dem ersten.

    Da hast Du natürlich Recht, aber das hab ich ja auch nicht behauptet.
    Ich glaube der beste Weg, in die Programmierung zu finden, ist mit einfachen C++ Konsolenanwendungen anzufangen (sich also die Sprache C++ GUT aneigenen, bis man das GUT kann!), um danach später sich mit einem (modern gehaltenen) GUI-Framework zu beschäftigen. Als Ergänzung ist WinAPI dazu dann tres magnifique 😉 .



  • CodeFinder schrieb:

    Wie bitte?! Ist nicht Dein Ernst, oder ? 😮
    Kannst Du C++ ? - Dann solltest Du wissen, das diese Codes NICHT annähernd oo. sind.

    Ja, ich kann C++ 🙄
    Und es ist mein Ernst. Natürlich verwendet Petzold keine objektorientierten Paradigmen wie Polymorphie, aber die Grundstruktur seiner Programme ist i.d.R. trotzdem "an Objekten orientiert" (ja, die gibts im Windows-API), dementsprechend vermeidet er auch vieles, was ein schlechtes C++-Programm ausmacht, z.B. globale Variablen. Natürlich sind seine Programme nicht in einem Maße objektorientiert wie ein gutes C++-Programm, aber sie gehen auch in dieser Hinsicht weit über diese seltsame Mischung von Klassen mit Public Members, falsch verstandener Ungarischer Notation, globalen Variablen und Funktionen hinaus, die man leider immer noch in so vielen Werken findet, die sich "C++-Buch" schimpfen.


Anmelden zum Antworten