Open Source im professionellen Einsatz
Linux-Magazin 06/2017

Zwei Bücher für Beginner: Der Einstieg in SQL beziehungsweise in Python

Tux liest

Zwei Einführungen in verschiedene Gebiete der Programmierung – einmal in die Abfragesprache SQL, zum anderen in die beliebte Skriptsprache Python.

653

Das Buch "Einstieg in SQL" von Michael Laube vermittelt SQL für Anfänger. Entsprechend stellt es die Installation von MySQL und einer Beispieldatenbank voran. Dabei geht der Text ganz selbstverständlich nur auf Windows ein.

Nun ist zwar einerseits eine Linux-Version der Installationsanleitung fast obsolet, weil eine Paketinstallation aus dem Repository nur aus wenigen Klicks oder einer Kommandozeile besteht und nicht wie unter Windows zu einer Installationsorgie ausartet, die im Buch mit 18 (!) Screenshots illustriert ist. Andererseits wird sogar auf eine Anleitung für Ubuntu zum Download verwiesen. Aber Feinheiten gehen so unter, etwa die Möglichkeit, SQL-Kommandos via Shellskript auszuführen oder Datenbankeinstellungen im Environment zu speichern.

Die ersten Kapitel behandeln grundlegende Tabellenabfragen mit »SELECT« einschließlich »WHERE« -Klauseln und Constraints sowie die Anfangsgründe der Data Definition Language mit »CREATE TABLE« inklusive einer Einführung in Datentypen. Auch hier orientiert sich der Autor vor allem am weitverbreiteten MySQL. Einsteigern kommt das aber zugute, ihnen helfen auch die Übungsaufgaben nebst Lösungen am Ende jedes größeren Abschnitts.

Nicht direkt mit SQL zu tun haben das Modellieren und Normalisieren von Datenbanken, was sich zwei Kapitel zur Aufgabe machen. Die Beziehungen zur Sprache sind aber eng, sodass die Kenntnis dieser Konzepte durchaus von Nutzen ist. Das zeigt sich im anschließenden Kapitel über die Überführung des Modells in Tabellen. Ähnlich enge Beziehungen gibt es zum Indizieren, worauf das letzte Kapitel eingeht.

Weiter geht das Buch auf Änderungen bei aufeinander bezogenen Tabellen und die Abfragen solcher Tabellenverbindungen ein, sprich Joins. Es schließen sich Kapitel zu speziellen Fragen an, etwa Transaktionen, Rechnen mit SQL, Skalarfunktionen, Bedingungen in SQL, Zeit- und Datumswerte, Aggregatfunktionen oder Subqueries.

Das Buch ist durchweg gut verständlich, wenn auch der Stil hin und wieder etwas verunglückt. So schleicht sich sicher ungewollt ein überheblich-joviales Schulterklopfen in den Ton, wenn der Autor belehrt: "Der Begriff ,explizit' ist Ihnen nicht neu. Er bedeutet so viel wie ,ausdrücklich'." Alles in allem ist das Buch aber eine gute Hilfe für SQL-Einsteiger.

Python von Grund auf

Der Python-Kurs startet althergebracht: An die Installation von Python (falls nötig) schließt sich ein minimales Hello-World-Programm an, gefolgt von einer Einführung in Grundkonzepte wie Variablen und einfache Datentypen, Listen und Dictionaries, bedingte Programmausführung, Schleifen und Funktionen. Die Erklärungen setzen nichts voraus und sind größtenteils gut verständlich.

Unverständlich bleibt hingegen, warum etwa Texte in Beispielen prinzipiell nicht übersetzt sind oder warum die Umschlaggrafik eine Schlange auf einer Flugzeugturbine zeigt, während der Text ausführlich erklärt, dass sich der Name der Sprache gerade nicht von dem Reptil ableitet (sondern von der bekannten Komikertruppe Monty Python). Unschön ist auch der Hang zur bedingungslosen Steigerung: So kann man angeblich in Dictionaries "fast unbegrenzte Mengen" von Informationen speichern oder mit Klassen "praktisch jedes Problem lösen". Das ist natürlich Humbug.

In weiteren Kapiteln geht es um fortgeschrittene Techniken, die nicht mehr so einfach zu erklären sind. Die Einführung in das objektorientierte Programmieren verwendet Klassen von Hunden und Autos. Das sind greifbare Objekte, aber ihre Aktionen lassen sich nur in Pseudocode beschreiben. Das ist zwar anschaulich, aber weit weg von dem, was ein Programmierer tatsächlich kodiert.

An die Vorstellung der sprachlichen Mittel von Python schließt sich ein zweiter Buchteil an, der die Fähigkeiten des angehenden Python-Programmierers anhand dreier unterschiedlicher Projekte schulen will. Es geht um ein 2-D-Spiel unter Verwendung der Bibliothek Pygame, um die Visualisierung von Daten unter Zuhilfenahme von Matplotlib und um eine Webanwendung, die auf das Framework Django setzt. Diese Gelegenheit, das frisch erworbene Wissen anzuwenden, hilft die eigenen Programmiertalente zu festigen und zu erweitern. Insgesamt ein empfehlenswertes Buch für Einsteiger.

Info 1

Michael Laube:

Einstieg in SQL

Rheinwerk-Verlag, 2017

600 Seiten

30 Euro

ISBN: 978-3-8362-4563-0

Info 2

Eric Matthes:

Python Crashkurs

Dpunkt-Verlag, 2017

90 Seiten

33 Euro

ISBN: 978-3-86490-444-8

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

  • Bücher

    Ein Buch diskutiert die Messbarkeit von Programmierleistungen: Lässt sich Effizienz beim Coden beziffern? Ein zweites Buch begleitet bei den ersten Schritten in Python.

  • Bücher

    Diesmal geht es um zwei Bücher, die ihr jeweiliges Thema besonders umfassend und gründlich behandeln. Das eine stellt SSL/TLS in all seinen Facetten vor, das zweite ist ein 1000-Seiten-Wälzer, der keine Frage zum Rasp-berry Pi offen lässt.

  • Tux liest

    Zope ist ein freies Framework für die Entwicklung von Web-Applikationen und fast vollständig in Python geschrieben, einer modernen, objektorientierten Skriptsprache. Jetzt ist bei Galileo Computing ein Buch von Thomas Theis erschienen, das beide zusammen behandelt.

  • Tux liest

    Erst hierhin, dann dorthin: Bewegungsüberwachung von Webseiten-Besuchern nützen dem Marketing. Der technischen Umsetzung hat der deutsche Ableger des O\'Reilly-Verlags ein Buch gewidmet. Die Konkurrenz, Galileo Press, kommt mit einem Einführungsbuch für Python 3 zu Wort.

  • Bücher

    Die Bücherseite stellt dieses Mal Bücher für fortgeschrittene Programmierer vor. Der erste Titel beschäftigt sich mit der Python-Praxis, der zweite mit Parallelprogrammierung in der Sprache Haskell.

comments powered by Disqus

Ausgabe 09/2017

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