Professionelles Go (Golang): Fortgeschrittene Techniken
Professionelles Go (Golang): Fortgeschrittene Techniken
Zusammenfassung:
Das Buch „Professionelles Go (Golang): Fortgeschrittene Techniken“ ist ein praktischer Leitfaden für Entwickler, die die Grundlagen der Sprache bereits beherrschen und auf das nächste Meisterschaftsniveau aufsteigen möchten. Der Autor, Alexej Rudin – Senior-Ingenieur mit 10 Jahren Erfahrung in der Entwicklung verteilter Systeme – teilt reale Fallbeispiele, Muster und Techniken, die in Einsteiger-Tutorials selten vorkommen.
Das Buch ist um drei Säulen der professionellen Go-Entwicklung aufgebaut: Nebenläufigkeit, Architektur und Leistung. Sie erfahren nicht nur, wie eine Goroutine oder ein Kanal funktioniert, sondern lernen, komplexe nebenläufige Systeme ohne Datenkonflikte und Deadlocks zu entwerfen. Besonderes Augenmerk liegt auf den Mustern Fan-In/Fan-Out, Worker-Pool, Pipeline und der Verwendung von context zum Abbrechen von Operationen.
Im zweiten Teil des Buches werden Architekturfragen behandelt: von der Organisation von Paketen und Modulen bis hin zum Aufbau von Microservices-Systemen in Go. Sie lernen die SOLID-Prinzipien in Bezug auf Go kennen, setzen Schnittstellen und Komposition anstelle von Vererbung richtig ein. Ein eigenes Kapitel widmet sich der Arbeit mit gRPC und protobuf – dem modernen Standard für die Kommunikation zwischen Diensten.
Der dritte Teil befasst sich mit der Optimierung: Profiling mit pprof, Tracing, Speicherverwaltung (Escape-Analyse, GC-Tuning). Sie erfahren, wie Sie Engpässe finden, Benchmarks schreiben und typische Leistungsfehler vermeiden. Das Buch behandelt auch das Testen in Go: table-driven Tests, Mocks, Integrationstests und Fuzzing.
Für wen ist dieses Buch:
- Entwickler, die die Go-Syntax beherrschen, aber production-ready Code schreiben möchten
- Backend-Ingenieure, die von anderen Sprachen (Java, Python, C++) zu Go wechseln
- DevOps und SRE, die Go zum Schreiben von Tools und Dienstprogrammen verwenden
- Teamleiter, die Best Practices für Go im Team einführen möchten
Was Sie lernen werden:
- Tiefes Verständnis des Go-Speichermodells und der Synchronisation
- Richtiges Design von APIs und Bibliotheken in Go
- Techniken für die Arbeit mit Reflexion und Code-Generierung
- Wie man effiziente HTTP-Dienste und Middleware schreibt
- Methoden zum Debuggen und Profiling in der Produktion
- Ansätze zur Fehlerbehandlung und Protokollierung
Alle Codebeispiele sind im Repository verfügbar und werden von ausführlichen Kommentaren begleitet. Das Buch eignet sich für alle, die bereits mindestens ein paar Projekte in Go geschrieben haben und ihr Wissen systematisieren, Anti-Patterns loswerden und lernen möchten, die richtigen Architekturentscheidungen zu treffen.
Nach der Lektüre werden Sie in der Lage sein, hochlastige Systeme souverän zu entwerfen, sauberen und wartbaren Code zu schreiben und die einzigartigen Möglichkeiten der Sprache Go – ihre Einfachheit, Geschwindigkeit und integrierte Unterstützung für Nebenläufigkeit – effektiv zu nutzen.
Empfehlungen
API-Entwicklung mit Kotlin: Von den Grundlagen bis zur Produktion
C# (.NET) für Data Science: Von den Grundlagen bis zu Production-Modellen
DevOps für Swift (iOS/macOS) Entwickler
Python Testing mit pytest (Testen in Python mit pytest)
Maven: Das umfassende Handbuch
Effektives C#: 50 Wege, Ihren C#-Code zu verbessern