Go programmieren

Einführung in die Programmiersprache Go

Die Go-Macher beschreiben ihre Sprache als "ausducksstark, präzise, sauber und effizient. Ihre Mechanismen zur Nebenläufigkeit machen es einfach Programme zu schreiben, die ein Maximum aus vernetzten Multicore-Rechnern holen, während ihre neuartige Typisierung flexible und modulare Programmierkonstrukte erlaubt. Go kompiliert einerseits schnell zu Maschinencode, bringt andererseits Speicherverwaltung und Introspektion zur Laufzeit mit. Es ist eine schnelle, statisch typisierte Sprache, die sich wie eine dynamische typisierte Interpretersprache anfühlt."

Entwickelt wurde Go von Urgesteinen der Branche, darunter Rob Pike (verantwortlich für das Betriebssysteme Plan 9 von Bell Labs, Mitentwickler von UTF-8 und bekannt durch die Bücher "Der Unix Werkzeugkasten" und "Programmieren mit Unix"), sowie UNIX-Schöpfer Ken Thompson (ebenfalls verantwortlich für Plan9, UTF-8 und die Programmiersprache B (Vorgänger von C)) bei Google. Inzwischen ist Go im Begriff eine populäre Programmiersprache zu werden. Die länger werdende Liste der Projekte, die Go erfolgreich einsetzen, umfasst u.a. Docker und CoreOS/etcd.

Diese Schulung beginnt mit einer schnellen Einführung der grundlegenden Syntax von Go. Um dann zügig zu den Themen vorzustoßen, die Entwickler anderer Sprachen an Go interessieren. Am Ende der Schulung werden Sie einen Überblick über die Sprache und Ihr Ökosystem haben. Sie werden einschätzen können, wo sich der Einsatz von Go für sie lohnt. Und sind startklar für erste Projekte.

Voraussetzungen

Der Kurs bietet eine Einführung in die Programmiersprache Go. Dieser Kurs richtet sich an Python, Ruby, Perl oder JavaScript-Entwickler ebenso wie an Entwickler aus dem Java und C++-Umfeld.

Absoluten Programmierneulingen empfehlen wir, zu erst den Kurs Programmieren lernen zu besuchen. Sie sollten mit einem Texteditor umgehen können, sowie mit dem Umgang der Kommandozeile unter GNU/Linux vertraut sein.

Wir empfehlen Ihnen, sich vor Kursbeginn einen Bitbucket- oder GitHub-Account anzulegen.

Inhalt

  • Einführung: Was ist Go? Und wie wird's installiert.
  • Grundlagen: Erkunden Sie die Go Programming Language Specification. Schreiben Sie erste Programme.
  • Das Go-Typsystem/Interfaces: Entdecken Sie eine andere Sichtweise auf Objektorientierung.
  • Fehlerbehandlung einmal anders: Ein Leben ohne Ausnahmen.
  • Module: Wie sie Ihren Code in logische Einheiten gruppieren können.
  • Concurrency: Mit Nebenläufigkeit als Architektur zur skalierenden Anwendung.
  • Die Standard-Bibliothek: Batteries included!
  • Das Öko-System: go vet, go lint, der Race-Detektor, Guru, Debugging, etc ...
  • Unit-Tests mit Go

Kurszeiten

Wer möchte, reist bis 22 Uhr am Vortag an und nutzt den Abend bereits zum Fachsimpeln am Kamin oder im Park.

An den Kurstagen dann von 9-18 Uhr (mit 2 Kaffee- und 1 Mittagspause) etwa 60% Schulungen und 40% Übungen. Selbstverständlich arbeitet jeder Teilnehmer am von uns gestellten Notebook oft parallel zum Referenten mit.

Anschließend Abendessen und Angebote für Fachsimpeln, Ausflüge uvm. Wir schaffen eine Atmosphäre, in der Fachleute sich ungezwungen austauschen. Wer das nicht will, wird zu nichts gezwungen und findet auch jederzeit Ruhe.