Bewertung:

Das Buch wird im Allgemeinen für seinen klaren und organisierten Ansatz zur Vermittlung von Go und Microservices mit praktischen Beispielen und einem Schwerpunkt auf dem Systemdesign gut aufgenommen. Einige Benutzer finden jedoch, dass es an Vollständigkeit und Praktikabilität mangelt, insbesondere in Bezug auf die Details der Projektimplementierung.
Vorteile:⬤ Gut durchdacht
⬤ lehrt Problemdekomposition und effiziente Lösungen mit Microservices
⬤ klare und prägnante Einführung in Go
⬤ tolle Beispiele
⬤ verbindet Theorie mit praktischer Anwendung
⬤ gut für verschiedene Qualifikationsniveaus
⬤ deckt essentielles Systementwurfswissen ab
⬤ relevanter Inhalt, der trotz wechselnder Technologien anwendbar bleibt.
⬤ Irreführende Beschreibung
⬤ erste Hälfte kann langweilig sein
⬤ Abhängigkeitsprobleme mit Beispielsoftware
⬤ unvollständige Codeschnipsel und unklare Projektstruktur
⬤ Probleme mit dem Github-Repository (veraltete Bibliotheken, fehlende Anleitungen)
⬤ einige Nutzer sind der Meinung, dass die praktische Anleitung zur Programmierung verbessert werden könnte.
(basierend auf 8 Leserbewertungen)
Hands-On Software Engineering with Golang
Entdecken Sie Software-Engineering-Methoden, -Techniken und -Best Practices in der Go-Programmierung, um einfach zu wartende Software zu erstellen, die bei Bedarf mühelos skaliert werden kann Hauptmerkmale Wenden Sie Best Practices an, um schlanken, testbaren und wartbaren Go-Code zu erstellen, um die Anhäufung technischer Schulden zu vermeiden Entdecken Sie die integrierte Unterstützung von Go für Nebenläufigkeit und Message-Passing, um hochleistungsfähige Anwendungen zu erstellen Skalieren Sie Ihre Go-Programme über Maschinen hinweg und verwalten Sie ihren Lebenszyklus mit Kubernetes Buchbeschreibung
In den letzten Jahren hat sich Go zu einer der beliebtesten Sprachen für die Entwicklung skalierbarer und verteilter Systeme entwickelt. Sein durchdachtes Design und seine integrierten Gleichzeitigkeitsfunktionen machen es Ingenieuren leicht, Code zu schreiben, der alle verfügbaren CPU-Kerne effizient nutzt.
Dieses Golang-Buch stellt die besten Praktiken zum Schreiben von schlankem Go-Code vor, der einfach zu testen und zu warten ist, und hilft Ihnen, die praktische Umsetzung zu erkunden, indem Sie eine mehrschichtige Anwendung namens Links 'R' Us von Grund auf erstellen. Sie werden durch alle Schritte geführt, die mit dem Entwurf, der Implementierung, dem Testen, der Bereitstellung und der Skalierung einer Anwendung verbunden sind. Ausgehend von einer monolithischen Architektur werden Sie das Projekt iterativ in eine serviceorientierte Architektur (SOA) umwandeln, die die effiziente Out-of-Core-Verarbeitung großer Link-Graphen unterstützt. Sie lernen verschiedene innovative und fortschrittliche Software-Engineering-Techniken kennen, z. B. den Aufbau erweiterbarer Datenverarbeitungspipelines, die Entwicklung von APIs mit gRPC und die Ausführung verteilter Graphenverarbeitungsalgorithmen in großem Maßstab. Schließlich lernen Sie, wie Sie Ihre Go-Dienste mit Docker kompilieren und verpacken und deren Bereitstellung in einem Kubernetes-Cluster automatisieren können.
Am Ende dieses Buches werden Sie wissen, wie man wie ein professioneller Softwareentwickler oder Ingenieur denkt und schlanken und effizienten Go-Code schreibt. Was Sie lernen werden Verstehen Sie die verschiedenen Phasen des Softwareentwicklungslebenszyklus und die Rolle eines Softwareingenieurs Erstellen Sie APIs mit gRPC und nutzen Sie die vom gRPC-Ökosystem angebotene Middleware Entdecken Sie verschiedene Ansätze für die Verwaltung von Paketabhängigkeiten für Ihre Projekte Erstellen Sie ein End-to-End-Projekt von Grund auf und erkunden Sie verschiedene Strategien für dessen Skalierung Entwickeln Sie ein Graphenverarbeitungssystem und erweitern Sie es so, dass es verteilt ausgeführt werden kann Stellen Sie Go-Dienste auf Kubernetes bereit und überwachen Sie ihren Zustand mit Prometheus Für wen dieses Buch gedacht ist
Dieses Golang-Programmierbuch richtet sich an Entwickler und Software-Ingenieure, die Go nutzen möchten, um skalierbare verteilte Systeme effektiv zu entwerfen und aufzubauen. Kenntnisse der Go-Programmierung und grundlegende Netzwerkprinzipien sind erforderlich. Inhaltsverzeichnis Software-Engineering aus der Vogelperspektive Best Practices zum Schreiben von sauberem und wartbarem Go-Code Dependency Management The Art of Testing The Links 'R' Us Project Building a Persistence Layer Data-Processing Pipelines Graph-Based Data Processing Communicating with the Outside World Building, Packaging, and Deploying Software Splitting Monoliths into Microservices Building Distributed Graph-Processing Systems Metrics Collection and Visualization Epilogue