Open Source im professionellen Einsatz
Linux-Magazin 11/2012

Bücher über Statistik sowie über C++-Metaprogrammierung

Tux liest

,

Ein neu übersetztes Buch möchte Statistik mit Hilfe von Python-Programmen anschaulich machen. Der zweite Titel treibt die Metaprogrammierung mit C++-Templates zur Meisterschaft.

609

Statistik ist ein trockenes Thema, mit dem sich aber Studenten vieler Disziplinen beschäftigen müssen. Der Verlag O'Reilly hat nun die deutsche Fassung eines Lehrbuchs veröffentlicht, das mit Hilfe von Python-Programmen in die Wahrscheinlichkeitsrechnung und Statistik einführen soll.

Vorkenntnisse nötig

Eine echte Einführung ist "Statistik-Workshop für Programmierer" aber nicht geworden: Ohne fundierte Vorkenntnisse in Statistik – Schulmathematik reicht nicht aus – und ohne Programmierkenntnisse in Python wird der Leser scheitern. Aus mathematischer Sicht führt der Autor zudem einige Begriffe ungenau ein oder stellt sie vereinfacht dar: So unterscheidet er beispielsweise nicht zwischen relativer Häufigkeit in einer Stichprobe und Wahrscheinlichkeit.

Problematisch ist auch, dass der Autor viele mathematische Konzepte erwähnt und teilweise Beispiele und Python-Code angibt, ohne den Sinn dieser Begriffe zu erklären. Für manche mathematischen Sätze präsentiert er Beweise (oder deren Skizzen), die für die Zielgruppe aber nicht nachvollziehbar sind.

Von Programmlistings enthält das Buch meist nur die wichtigsten Stellen, die kompletten Programme samt Dokumentation und Lösungen zu den Übungen gibt es in einem 45 MByte großen Archiv auf der O'Reilly-Downloadseite, das auch große Beispieldatensätze enthält. Dem Buch fehlen aber Hinweise zur benötigten Python-Version. Im Test funktionierten einige Programme zunächst nicht, weil der Leser das Paket »python-matplotlib« erst nachinstallieren muss.

Wer gut Englisch versteht, kann statt zur deutschen Übersetzung auch zum Original greifen: Das heißt "Think Stats" und ist unter http://greenteapress.com/thinkstats/ gratis unter der Creative-Commons-Lizenz (CC BY-NC 3.0) im PDF-Format erhältlich.

Downeys Buch eignet sich für Studenten der Mathematik oder Naturwissenschaften, die nach dem Besuch einer Statistikvorlesung das erworbene Wissen durch praktische Experimente vertiefen wollen. Für den Erstkontakt mit der Materie taugt es nicht, auch wenn der Klappentext etwas anderes verspricht.

Info

Allen B. Downey:

Statistik-Workshop für Programmierer

O'Reilly, 2012

160 Seiten

25 Euro

ISBN: 978-1-59327-397-2

Template Metaprogramming

Eine Warnung zuerst: Das englischsprachige Buch "Advanced C++ Metaprogramming" von Davide Di Gennaro richtet sich nicht an Einsteiger, sondern an den erfahrenen C++-Programmierer, der bereits mit Templates vertraut ist. Template Metaprogramming bildet eine eigene Subsprache in C++. Es nützt aus, dass der Compiler die Templates evaluiert und somit der resultierende Code zur Laufzeit zur Verfügung steht.

Das Buch steht in der Tradition der Klassiker "Modern C++ Design" von A. Alexandrescu oder auch "C++ Template Metaprogramming" von D. Abrahams und A. Gurtovoy. Der Band lässt sich nicht schnell als Urlaubslektüre zur Hand nehmen, er verlangt intensive Auseinandersetzung. Die gut 500 Seiten bieten eine Einführung in diese Programmiertechnik samt Referenz. Stimmt die Einstellung des Lesers, wird das Buch zu einer einzigartigen Fundgrube fortgeschrittener Programmiertechniken.

Systematisch entwickelt es Dinge, die der Programmierer schon immer über Templates wissen wollte. Beispielsweise diskutiert der Autor intensiv Template Tagging, um die Überladung von Templates feingranular zu steuern, oder auch Traits für die Modularisierung von Template-Schnittstellen. Außerdem erläutert er legendäre Template-Idiome wie "Substitution failure is not an error" (SFINAE), Trampoline und das "Curiously recurring template pattern" (CRTP).

Obwohl das Werk auf klassischem C++98 basiert, bietet Di Gennaro einen weiteren Mehrwert: Er entwickelt oft Codefragmente, die der aktuelle C++11-Standard unterstützt. Tiefere Einsichten in die neue Type-Traits-Bibliothek oder Lambda-Funktionen sind daher inklusive.

Wer den Sourcecode zum Herunterladen sucht oder gar Übungsaufgaben samt Musterlösungen erwartet, wird enttäuscht. Dieses Buch will selbst erarbeitet sein. Wer Templates auf einem hohen Niveau meistern möchte, für den ist "Advanced C++ Metaprogramming" Pflichtlektüre.

Info

Davide Di Gennaro:

Advanced C++ Metaprogramming

Createspace, 2011

530 Seiten

37 Euro

ISBN: 978-1-46096616-7

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 1 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

Linux-Magazin kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • C++

    C++-Programme arbeiten zur Laufzeit, der eingebaute Template-Mechanismus aber zur Compilezeit. Geschickte Entwickler nutzen dies für Metaprogrammierung im funktionalen Stil, die erstaunlich performante und sogar selbstoptimierende Software ermöglicht.

  • Bücher

    Zwei C++-Bücher: eins für Anfänger, eins für Profis. Eins will es dem Leser besonders leicht machen, das andere macht es ihm schwer. Doch sich durchzukämpfen, zahlt sich beim letzteren aus.

  • Tux liest

    Auch Entwickler und Admins müssen gelegentlich mit dem Beamer vortragen. Ein hübsches Buch von O\'Reilly verspricht schönere Folien. Außerdem: 600 Seiten über Neuerungen in der C++-Bibliothek.

  • Bücher

    Die Bücherseite arbeitet sich diesmal von unten nach oben durch den Software-Stack: Zuerst gibt es ein Grundlagenbuch zur Linux-Systemprogrammierung. In dem anderen Band haben Webentwickler die Gelegenheit, sieben unterschiedliche Frameworks kennenzulernen.

  • Erfrischend neu

    An der Sprache C++ ändert sich selten etwas. Doch nun steht mit dem C++0x ein neuer Standard vor der Tür, von dem Neulinge wie Könner profitieren sollen. Mit Move-Semantik, Lambda-Funktionen und Aggregatzuweisungen bringt er viele Modernisierungen in die Programmiersprache.

comments powered by Disqus

Ausgabe 10/2017

Digitale Ausgabe: Preis € 6,40
(inkl. 19% MwSt.)

Artikelserien und interessante Workshops aus dem Magazin können Sie hier als Bundle erwerben.