Testgetriebene Entwicklung in Go
404 Seiten
German
PDF
4.5

Testgetriebene Entwicklung in Go

Testgetriebene Entwicklung in Go

Autor:

Jahr:

Zusammenfassung:

Einleitung

Das Buch „Test-Driven Development in Go“ (Adelina Simion, 2023, 404 Seiten) ist ein moderner praktischer Leitfaden zur testgetriebenen Entwicklung (TDD) in der Sprache Go. In einer Welt, in der Zuverlässigkeit und Wartbarkeit von Code entscheidend werden, bietet TDD einen disziplinierten Ansatz: Zuerst wird ein Test geschrieben, dann der minimale Code, um ihn zu bestehen, und anschließend wird refaktoriert. Die Autorin, eine erfahrene Go-Entwicklerin und Beraterin, führt den Leser Schritt für Schritt von den Grundlagen von TDD bis zu fortgeschrittenen Techniken, wobei sie reale Beispiele und bewährte Praktiken des Go-Ökosystems verwendet.

Worum es in dem Buch geht

Das Buch ist in drei Teile gegliedert. Der erste Teil führt in die Philosophie von TDD ein, die Einrichtung der Umgebung und das Schreiben erster Tests mit dem Standardpaket testing. Der zweite Teil vertieft die Organisation von Tests, Mocks, tabellarische Tests, das Testen von HTTP-Servern und Datenbanken. Der dritte Teil widmet sich Integrationstests, Benchmarks, dem Testen von nebenläufigem Code und der Einführung von TDD in reale Projekte. Besonderes Augenmerk liegt auf Refactoring und der Aufrechterhaltung von sauberem Code.

Für wen dieses Buch ist

Das Buch richtet sich an Entwickler, die bereits mit den Grundlagen von Go vertraut sind (Syntax, Goroutinen, Kanäle). Anfänger in TDD finden hier eine verständliche Einführung, erfahrene Ingenieure erhalten fortgeschrittene Techniken und Architekturtipps. Das Buch ist für alle nützlich, die die Qualität ihres Codes verbessern, die Anzahl der Fehler reduzieren und sicher refaktorieren möchten.

Was der Leser lernen wird

  • Grundlagen von TDD: Rot-Grün-Refactoring-Phase, Tests vor dem Code schreiben.
  • Verwendung des Standardpakets testing und der Bibliotheken testify, gomock.
  • Tabellarische Tests, Subtests, parametrisierte Tests.
  • Testen von HTTP-Handlern, Middleware, Clients.
  • Arbeit mit Mocks und Stubs zur Isolierung von Abhängigkeiten.
  • Testen von Datenbanken (SQL, In-Memory, Transaktionen).
  • Integrationstests mit Docker und Testcontainers.
  • Benchmarking und Performance-Profiling.
  • Testen von nebenläufigem Code (Goroutinen, Kanäle, Race Detector).
  • Refactoring von Legacy-Code mit TDD.
  • Integration von TDD in CI/CD-Pipelines.

Stärken

Der Hauptvorteil des Buches ist seine praktische Ausrichtung. Jedes Kapitel enthält fertige Beispiele, die ausgeführt und modifiziert werden können. Die Autorin erklärt nicht nur die Theorie, sondern zeigt, wie TDD hilft, saubere Schnittstellen und lose gekoppelte Module zu entwerfen. Das Buch ist in einer lebendigen Sprache geschrieben, komplexe Konzepte (z. B. das Testen von Goroutinen) werden anhand einfacher Beispiele erläutert. Besonders hervorzuheben ist das Kapitel über Refactoring – es lehrt, Code sicher unter dem Schutz von Tests zu ändern. Der einzige Nachteil ist, dass das Buch keine Frameworks wie Gin oder Echo abdeckt, was jedoch durch ein tiefes Verständnis der Standardbibliothek ausgeglichen wird.

Empfehlung

Das Buch ist eine Pflichtlektüre für alle Go-Entwickler, die zuverlässigen, testbaren und leicht wartbaren Code schreiben möchten. Es wird auch Teamleitern und Architekten nützlich sein, die TDD in ihrem Team einführen. Anfänger in Go sollten zunächst die Grundlagen der Sprache erlernen, bevor sie sich diesem Buch zuwenden. „Test-Driven Development in Go“ ist nicht nur ein Lehrbuch, sondern ein Nachschlagewerk, zu dem man immer wieder zurückkehren möchte.

Empfehlungen