Was ist Go?

Abgeschlossen

Go ist eine Programmiersprache, die bei Google entwickelt wurde. Sie wurde 2009 als Open-Source-Projekt von Robert Griesemer, Rob Pike und Ken Thompson angekündigt. Ab diesem Zeitpunkt wurde Go für die Entwicklung anderer bekannter Technologien wie Docker, Kubernetes und Terraform verwendet. Go wird zwar häufig in serverseitiger Software und Cloudsoftware verwendet, ist aber eine universelle Sprache mit einer Vielzahl von unterschiedlichen Anwendungsfällen.

Go ist ausdrucksstark, präzise und klar. Go wurde als idiomatische Sprache konzipiert und ermöglicht Programmierer*innen das produktive Schreiben von effizientem und robustem Code. In Go geschriebene Programme können auf Unix-Systemen wie Linux und macOS sowie unter Windows ausgeführt werden. Go fällt zum Teil aufgrund seiner einzigartigen Parallelitätsmechanismen auf, die das Schreiben von Programmen, die mehrere Kerne gleichzeitig nutzen können, einfach macht. Es handelt sich in erster Linie um eine stark und statisch typisierte Sprache, was bedeutet, dass Variablentypen zur Kompilierzeit bekannt sind. Sie verfügt jedoch über einige dynamisch typisierte Funktionen.

Gemäß des TIOBE-Index war Go 2009 und 2016 Programmiersprache des Jahres. Obwohl 2016 eine Trendwende stattfand, erhält Go nach wie vor gute Bewertungen. Laut der jährlichen Stack Overflow Developer Survey gilt Go weiterhin als eine der beliebtesten Programmiersprachen.

Go weist viele Ähnlichkeiten zu C auf und erbt viele Aspekte der C-Syntax, z. B. Ablaufsteuerungsanweisungen, einfache Datentypen, Zeiger und andere Elemente. Syntax und Semantik der Sprache gehen jedoch über C hinaus. Sie weist auch Ähnlichkeiten mit Java, C#, Python und anderen Sprachen auf. Generell neigt Go dazu, Features aus anderen Programmiersprachen zu entlehnen und zu adaptieren, die Komplexität dabei aber größtenteils wegzulassen. Beispielsweise können Sie einige objektorientierte (OO) Programmierfeatures und Entwurfsmuster in Go verwenden, aber das vollständige OO-Paradigma ist nicht vollständig implementiert. Warum, erfahren Sie später in diesem Lernpfad.

Go-Prinzipien

Folgende Prinzipien sind die der Programmiersprache Go zugrunde liegenden Vorteile:

  • Die Go-Lizenz ist eine reine Open-Source-Lizenz.
  • Go-Programme werden zu einer einzelnen eigenständigen Binärdatei kompiliert, was das Freigeben und Verteilen vereinfacht.
  • Go unterstützt die Crosskompilierung für eine Vielzahl von Plattformen und Betriebssystemen.
  • Go verfolgt einen übersichtlichen und einfachen Ansatz, damit weniger Code erforderlich ist, mit diesem aber mehr erreicht werden kann.
  • Parallelität ist ein erstklassiges Argument und ermöglicht es, dass jede Funktion mit geringem Aufwand für den Programmierer als einfacher Thread ausgeführt werden kann.
  • Go bietet automatische Speicherverwaltung einschließlich Garbage Collection.
  • Schnelle Kompilierung und Ausführung.
  • Bei Go muss der komplette Code verwendet werden, andernfalls wird ein Fehler ausgelöst.
  • Es gibt eine offizielle Formatierung, die Sie dabei unterstützt, für projektübergreifende Konsistenz zu sorgen.
  • Go verfügt über eine große und umfassende Standardbibliothek, und viele Anwendungen können ohne Abhängigkeiten von Drittanbietern erstellt werden.
  • Go garantiert die Abwärtskompatibilität der Sprache mit früheren Versionen.

Hauptanwendungsfälle von Go

  • Anwendungen auf Systemebene
  • Webanwendungen
  • Cloudnative Anwendungen
  • Hilfsprogramme und Befehlszeilentools
  • Verteilte Systeme
  • Datenbankimplementierungen