© saicle/Shutterstock.com
PHP Magazin
Ein Einblick in die Webentwicklung mit Google Go

Wünsch dir was mit Go

Die Innovationsmaschine Google hat mit Go eine gut gemachte Sprache für die Server- und Backend-Programmierung geschaffen, die mittlerweile etabliert ist. Sie ist eine wichtige Toolsprache für DevOps und für den Einsatz im Cloud-Computing und wird mit vielen Features für die Netzwerk- und Webprogrammierung ausgeliefert. Dieser Artikel stellt Go als Entwicklungsgrundlage für Webapplikationen vor.

Daniel Stender


Das konsequent auf Effizienz getrimmte Go von Google (auch: „Golang“) [1] überzeugt als eine Art moderneres C mit performanten, praktischen, statisch gelinkten Binaries und kurzer Kompilationszeit auch bei umfangreichen Projekten. Darüber hinaus hat die Sprache neben einer integrierten Toolchain und einer schlanken Syntax auch eine gradlinige, pragmatische Architektur und starke Features wie implizite Struct/Method-Interfaces und eine eingebaute Nebenläufigkeit. Die stark idiomatische, imperative Sprache mit objektorientierten Elementen steht mit starker Typisierung und Garbage Collection irgendwo im Dreieck zwischen C, Java und Skriptsprachen wie Python. Sie hat auf jeden Fall mittlerweile einen festen Platz in der System- und Backend-Programmierung. Fans sehen dabei pragmatisch über kleinere Mängel der Sprache hinweg. Seit 2012, als Go 1.0 veröffentlicht worden ist, hat sie als wichtige Toolsprache für DevOps die Rolle von Ruby übernommen, und auch im Cloud-Computing eine tragende Position erlangt. Die Liste der in Golang implementierten DevOps- und Cloud-Computing-Applikationen ist lang: Dazu gehören zum Beispiel Docker genauso wie Kubernetes, Prometheus, Elastic Beats, etcd, LXD, und HashiCorp-Tools wie Terraform, Packer, Consul und Vault. Eine Go Library für den programmgesteuerten Zugriff auf die eigene API für das zugehörige CLI-Tool sind auch bei mittelgroßen Cloudanbietern wie DigitalOcean und Hetzner Standard.

Go wird mit gut ausgestatteter und moderner Standardbibliothek geliefert, zu der zum Beispiel auch Kryptographiepakete gehören. Eine Reihe der eingebauten Pakete unterstützen die Webentwicklung, also das Aufsetzen von Applikationen, die von einem Browser bzw. über das HTTP-Protokoll angesprochen werden. Da gibt es zunächst das http-Paket mit einem robusten und produktionsreifen HTTP-Server, das template-Paket, das eine Sprache für HTML-Templates bietet, sowie das json-Paket mit dem Sie JSON-Dokumente in Go-Datenstrukturen ein- und auspacken können, um etwa RESTful APIs damit aufzusetzen. Go eignet sich von seinem Ansatz her gut, um Microservices zu implementieren. Die eingebauten Features für die Webprogrammierung sind mit Server-Logging und Authentication und anderen Dingen auch nützlich für die allgemeine Backend-Entwicklung.

Go steht unter der BSD-Lizenz und ist frei verfügbar und einsetzbar. Dieser Artikel führt als Tutorial in die zentralen Elemente der Webentwicklung mit dieser Sprache ein, und möchte dabei auch ihre Effektivität dar...

PHP Magazin
Ein Einblick in die Webentwicklung mit Google Go

Wünsch dir was mit Go

Die Innovationsmaschine Google hat mit Go eine gut gemachte Sprache für die Server- und Backend-Programmierung geschaffen, die mittlerweile etabliert ist. Sie ist eine wichtige Toolsprache für DevOps und für den Einsatz im Cloud-Computing und wird mit vielen Features für die Netzwerk- und Webprogrammierung ausgeliefert. Dieser Artikel stellt Go als Entwicklungsgrundlage für Webapplikationen vor.

Daniel Stender


Das konsequent auf Effizienz getrimmte Go von Google (auch: „Golang“) [1] überzeugt als eine Art moderneres C mit performanten, praktischen, statisch gelinkten Binaries und kurzer Kompilationszeit auch bei umfangreichen Projekten. Darüber hinaus hat die Sprache neben einer integrierten Toolchain und einer schlanken Syntax auch eine gradlinige, pragmatische Architektur und starke Features wie implizite Struct/Method-Interfaces und eine eingebaute Nebenläufigkeit. Die stark idiomatische, imperative Sprache mit objektorientierten Elementen steht mit starker Typisierung und Garbage Collection irgendwo im Dreieck zwischen C, Java und Skriptsprachen wie Python. Sie hat auf jeden Fall mittlerweile einen festen Platz in der System- und Backend-Programmierung. Fans sehen dabei pragmatisch über kleinere Mängel der Sprache hinweg. Seit 2012, als Go 1.0 veröffentlicht worden ist, hat sie als wichtige Toolsprache für DevOps die Rolle von Ruby übernommen, und auch im Cloud-Computing eine tragende Position erlangt. Die Liste der in Golang implementierten DevOps- und Cloud-Computing-Applikationen ist lang: Dazu gehören zum Beispiel Docker genauso wie Kubernetes, Prometheus, Elastic Beats, etcd, LXD, und HashiCorp-Tools wie Terraform, Packer, Consul und Vault. Eine Go Library für den programmgesteuerten Zugriff auf die eigene API für das zugehörige CLI-Tool sind auch bei mittelgroßen Cloudanbietern wie DigitalOcean und Hetzner Standard.

Go wird mit gut ausgestatteter und moderner Standardbibliothek geliefert, zu der zum Beispiel auch Kryptographiepakete gehören. Eine Reihe der eingebauten Pakete unterstützen die Webentwicklung, also das Aufsetzen von Applikationen, die von einem Browser bzw. über das HTTP-Protokoll angesprochen werden. Da gibt es zunächst das http-Paket mit einem robusten und produktionsreifen HTTP-Server, das template-Paket, das eine Sprache für HTML-Templates bietet, sowie das json-Paket mit dem Sie JSON-Dokumente in Go-Datenstrukturen ein- und auspacken können, um etwa RESTful APIs damit aufzusetzen. Go eignet sich von seinem Ansatz her gut, um Microservices zu implementieren. Die eingebauten Features für die Webprogrammierung sind mit Server-Logging und Authentication und anderen Dingen auch nützlich für die allgemeine Backend-Entwicklung.

Go steht unter der BSD-Lizenz und ist frei verfügbar und einsetzbar. Dieser Artikel führt als Tutorial in die zentralen Elemente der Webentwicklung mit dieser Sprache ein, und möchte dabei auch ihre Effektivität dar...

Neugierig geworden?


   
Loading...

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang