Go Einführung

Die Programmiersprache Google Go hat sich seit der offiziellen Freigabe im Jahr 2009 zur Programmiersprache des Jahres entwickelt. Immer mehr wird Google Go auch in grösseren Projekten eingesetzt. Go ist eine pragmatische Programmiersprache und verbindet Konzepte von C,Java und Python. Go Programme sind zudem sehr schnell, da solche native kompiliert werden und damit wird kein zusätzliches Environment benötigt. Go ist zudem portabel und läuft auf allen gängigen Plattformen.

Von der Sprache her ist Go string typisiert, bietet aber keine Klassen sondern Strukturen mit Methoden und unterscheidet sich damit von klassischen objektorientierten Sprachen wie z.B. Java. So ist z.B. auch die Vererbung mit Go nicht möglich und dies ganz bewusst, denn es bietet die Komposition von Typen und auch Interfaces. Go Programme sind damit zwingend schlanker aufgebaut. Go arbeitet analog C mit Pointern, aber ohne deren Arithmetik.

Mit Google Go lassen sich parallele Abläufe mit Goroutines schnell und einfach programmieren. Go bietet reiche Concurrency Features und dies ist eines der wertvollsten Elemente dieser Sprache.

Go wird zur Zeit vor allem serverseitig eingesetzt und enthält einen integrierten Web Server (Http). Damit lassen sich auch Web Applikationen effizient und einfach programmieren.

Durch den einfachen Aufbau der Sprache bietet Go zu allen Aufgaben eine ähnliche Lösung und ist damit weniger vielfältig, dies ist ein enormer Vorteil für die Arbeit in Teams. Man kann den Programmcode leichter verstehen.

Mit diesem Kurs steigen Sie in den Google Go Zug ein. Wir arbeiten neben der Theorie vor allem mit Codebeispielen und Übungen. Wir referenzieren immer wieder auch die Quellen im Internet, so dass Sie umfassend informiert sind.

Mit dem Jumpstart beginnen wir zudem gleich mit dem Schreiben erster Unit Tests. Testing und Benchmarks sind direkt in Google Go integriert und lightweight.

Dieser Google Go Kurs vermittelt die Konzepte anhand von gezielt gewählten Beispielen und Anwendungsfällen. Damit folgt der Kursaufbau den pragmatischen Zielen von Go. Die Theorie wird direkt im Beispielcode oder als Notizen vermittelt. So verfügen Sie nach dem Kurs über umfassende Use Cases von Go.