namespace cpp

C++ lernen, kennen, anwenden

Benutzer-Werkzeuge

Webseiten-Werkzeuge


buecher
Introducing the new Bio-Optic Organized Knowledge device, trade named BOOK.
BOOK is a revolutionary breakthrough in technology: no wires, no electric circuits, no batteries, nothing to be connected or switched on. It's so easy to use even a child can operate it. …

Bücher zum Programmieren lernen

Die Angehörigen der Generation F*c<BOOK scheinen zur Informationsbeschaffung vorrangig Foren zu nutzen, in denen sie peinliche Fragen stellen. Fortgeschrittene setzen evtl. eine Suchmaschine ein, um festzustellen, ob sich vorher schon jemand blamiert hat. Eine dieser Fragen ist folgende.

Wie lerne ich programmieren?1)

Durch Üben und mit einem guten Buch. Ein gutes Buch kann den Lernprozess erheblich beschleunigen. Wie überall sind die guten schwer zu finden: einfach zu verstehen und doch tiefgehend und aktuell. Manchmal existiert keine deutsche Fassung oder das Original ist der Übersetzung vorzuziehen. Die unten stehende Auswahl bietet einen Einstieg.

Wo kann man ein Buch bekommen? Zu kaufen im BUCHladen. Besser, weil kostenlos ausleihbar, in einer BÜCHerei, auch Bibliothek genannt. Einige Bücher findet man digital im Netz, aber die müsste man erst ausdrucken und zusammenheften… Ein Buch kann man ohne Rechner benutzen oder neben den Rechner legen. Online-Tutorials verdecken die Bildschirmarbeitsfläche. (Dieser Einwand mag hinfällig sein, wenn der Rechner mit mehreren großen Bildschirmen ausgestattet ist.)

Einsteiger

C++

  • Andrew Koenig, Barbara Moo: Intensivkurs C++. Pearson (2003). ISBN 3-8273-7029-9, ca. 400 Seiten.
    Lehrt C++ für Anfänger ohne Programmiervorkenntnisse, beschränkt sich auf wichtige Sprachmerkmale und Bibliotheken.
  • Bjarne Stroustrup: Einführung in die Programmierung mit C++. Addison-Wesley / Pearson (2009). ISBN 3-8689-4005-7, ca. 1000 Seiten.
    engl. Programming Principles and Practice using C++.
    Lehrt allgemeine Programmierkonzepte und untersetzt dies mit modernem C++.
  • Bjarne Stroustrup: Die C++ Programmiersprache. 4. Auflage, Addison-Wesley (2010). 3-8273-3046-7, ca. 1000 Seiten.
    Als verständlich geschriebene Sprachreferenz unverzichtbar, aber kein Lehrbuch.
  • Bruce Eckel: In C++ denken. Markt & Technik (1998). IBSN 3-8272-9567-X, ca. 600 Seiten.
    Engl. Thinking in C++ auch elektronisch verfügbar.
    Betont den objektorientierten Ansatz. Nicht ganz frisch, aber als Einstieg in OOP geeignet.
  • Ulrich Kaiser: C/C++. Galileo (2000). ISBN 3-9343-5803-9, ca. 1000 Seiten.
    Beschreibt zuerst C, dann C++ (suboptimal), enthält aber viele gute Übungsaufgaben und Beispiele.
  • Walter Savitch: Problem solving with C++. 9th edn, Pearson (2014), ISBN-13: 978-0133591743, ca.1000 Seiten.
    Englisch, ohne Programmiervorkenntnisse nutzbar.
  • Bjarne Stroustrup: A Tour of C++. Addison-Wesley (2013). ISBN-13: 978-0321958310, ca. 180 Seiten.
    Überblick über modernes C++. Programmierkenntinsse in C++ vorausgesetzt.

Python

  • Paul Berry: Python von Kopf bis Fuß. O'Reilly (2011). ISBN 3-8972-1318-4, ca. 450 Seiten.
    Lehrt Sprache und gleichzeitig allgemeine Konzepte an praxisnahen Beispielen.
  • Gregory Wilson: Software Carpentry. Online Videokurs (2010).
    Vorlesung in englischen 3-Minuten-Häppchen, etwas anstrengend. Zielgruppe sind Studenten aller Wissenszweige, nicht nur Programmierer, daher auch wichtige Konzepte, die selbst universitäre Kurse verschweigen oder stillschweigend voraussetzen, z.B. Versionskontrolle.

Java

  • Robert Sedgewick, Kevin Wayne: Introduction to Programming in Java. An Interdisciplinary Approach. Addison-Wesley (2006). ISBN 0-321-49805-4, ca. 700 Seiten.
    Viele gute Übungsaufgaben aus unterschiedlichen Bereichen mit dem Schwerpunkt auf Algorithmen.
  • Cay Horstmann: Practical Object-Oriented Development in C++ and Java. Wiley (1997). ISBN 0-471-14767-2, ca. 550 Seiten.
    Crashkurse in C++ und Java mit Betonung der Unterschiede. Die Notation der Objektbeziehungen ist veraltet (kein UML).
  • Christian Ullenboom: Java ist auch eine Insel. 9. Auflage, Galileo (2010). ISBN 3-8362-1506-3, ca. 1400 Seiten.
    Ein Lehrbuch müsste sich mehr beschränken. Lässt kaum etwas aus, aber zum Nachschlagen gut geeignet, da als Open-Book verfügbar.

C#

  • Andrew Stellman, Jennifer Greene: C# von Kopf bis Fuß. O'Reilly (2008). ISBN 3-8972-1852-6, ca. 500 Seiten.
    Kurzweilige Einführung, aber kein Kindergarten-Niveau.
  • Golo Roden: Auf der Fährte von C#. Springer (2008). ISBN 3-5402-7888-5, ca. 200 Seiten.
    Als Guide to C# online verfügbar, mit Referenzteil.
    Hangelt sich an Sprachelementen entlang, kaum algorithmische Elemente.
  • Erik Gunnerson: C#. Tutorial und Referenz. Galileo (2001). ISBN 3-8984-2183-X, ca. 600 Seiten.
    Objektorientierung als Einsteig, schwerverdaulich. Auch als Open-Book verfügbar. Neue Konzepte wie LINQ fehlen.

Fortgeschrittene

  • Robert Sedgewick: Algorithmen in C++. Addison-Wesley (1992). ISBN 3-8931-9462-2, ca. 700 Seiten.
    Den Klassiker gibt es auch in Pascal, C und Java.
  • Thomas Cormen, Charles Leiserson et al.: Algorithmen. Eine Einführung. Oldenburg (2007). ISBN 3-4865-8262-3, ca. 1200 Seiten.
    Tiefgründiger Kurs in Algorithmen und Datenstrukturen. Wer Rot-Schwarz-Bäume implementieren will, kommt nicht darum herum, dieses Buch zu lesen. Quelltexte in C.
  • Erich Gamma et al.: Entwurfsmuster. Elemente wiederverwendbarer objektorientierter Software. 6.Auflage, Addison-Wesley (2010). ISBN 3-8273-3043-2, ca. 450 Seiten.
    Seit 2001 zeigt die "Gang of Four" wiederkehrende Problemstellungen des objektorientierten Entwurfs und Lösungsansätze auf.
  • Jon Bentley: Perlen der Programmierkunst. Addison Wesley (2000). ISBN 3-8273-1719-3, ca. 300 Seiten.
    Jeder Programmierer, der etwas auf sich hält, sollte einen Bentley haben (diesen, kein Auto).
  • Andrew Hunt, David Thomas: Der pragmatische Programmierer. Hanser (2003). ISBN 3-4462-2309-7, ca. 300 Seiten.
    Wie können Programmierer erfolgreich arbeiten? Eine Sammlung guter Tipps mit anekdotischen Elementen, von der Steinsuppe angefangen.
1)
Grammatisch korrekt: Wie lerne ich zu programmieren?
buecher.txt · Zuletzt geändert: 2015-06-15 15:26 (Externe Bearbeitung)