Go

Go ist eine moderne Programmiersprache, die mit hoher Performanz, geringem Speicherverbrauch, einer verständlichen Syntax und einer umfangreichen Standard Library überzeugen kann.

Go eignet sich für die Entwicklung von Web-Anwendungen, von Cloud & Network Services, von Anwendungen mit Steuerung über die Kommandozeile sowie von Werkzeugen im Bereich DevOps.

Go genießt trotz seines jungen Alters eine hohe Akzeptanz in der Softwarebranche. Go wurde von Mitarbeitern des Unternehmens Google entworfen und 2009 veröffentlicht. Bekannte Open-Source-Anwendungen wurden seitdem in Go implementiert, darunter Docker, Kubernetes, Terraform, Vault, Caddy und Hugo.

Go ist eine statisch typisierte kompilierbare Programmiersprache mit hoher Übersetzungsgeschwindigkeit, deren Syntax sich an C anlehnt. Go unterstützt Speichersicherheit, automatische Speicherbereinigung, strukturelle Typisierung und Nebenläufigkeit. Go erfordert die Verwendung von Zeigern, verzichtet dabei aber auf Zeigerarithmetik.

Go unterstützt objektorientierte Programmierung, ist aber nicht klassenbasiert. Datentypen können Methoden besitzen. Polymorphie wird über Interfaces (Schnittstellen) erreicht, über die Methodenaufrufe zur Laufzeit an die konkrete Implementierung gebunden werden. Anstelle von Vererbung und Typ-Hierarchien unterstützt Go das Pattern der Komposition.

Die Standardbibliothek von Go enthält Pakete für gängige Anforderungen wie HTTP-Server und -Clients, JSON- und XML-Parsing, SQL-Datenbanken und eine Reihe von Sicherheits-/Verschlüsselungsfunktionen. Die Go-Laufzeitumgebung enthält Werkzeuge für Race Detection, Benchmarking, Profiling, Code-Generierung und statische Code-Analyse.

Viele Cloud-Anbieter stellen Go APIs für ihre Dienste bereit und Open-Source-Bibliotheken unterstützen das API-Tooling, Transport, Überwachung, objektrelationales Mapping und Authentifizierung mit Go.

Mit vielen Go-Technologien habe ich mehrjährige Erfahrungen. Einige dieser Go-Technologien führe ich nachfolgend in alphabetischer Reihenfolge auf. Klicken Sie auf eine der hier aufgeführten Go-Technologien, um mehr darüber zu erfahren, insbesondere wofür ich sie verwendet habe.

Blackfriday · Cobra · Database/SQL · Echo · Http · Migrate · Pgx · Smtp · Template · Viper

Wenn Sie Fragen zum Schwerpunkt Go haben, berate ich Sie dazu gerne. Weitere Informationen finden Sie auf der Seite zu meinen Dienstleistungen rund um Softwareentwicklung.

Softwareprojekte mit Go

Entwicklung eines Online-Shops mit Newsletter für individualisierbare Artikel

Für einen Kunden im Bereich E-Commerce wurde ein Online-Shop zur Vermarktung und dem Verkauf von individualisierbarem Schmuck und Accessoires entwickelt. | mehr

REST API Backend für einen Online-Shop

Entwicklung eines REST API Backends für einen Online-Shop einschließlich Authentifizierung mit OpenID Connect und Keycloak sowie CI/CD auf Basis von GitHub Actions und Linux. | mehr

Corporate Website der Hardin Software GmbH

Die Website der Hardin Software GmbH basiert derzeit auf Hugo, Go, Docker, Kubernetes und Cloudflare. In diesem Beitrag erläutere ich einige interessante Aspekte zur Entwicklung und zum Betrieb dieser Website. | mehr