Go-Basics Seminar

Trainings-ID:
GO

Inhalt des Trainings

In diesem Seminar wird der Einstieg in die Programmiersprache Go, sowie deren Standardbibliotheken vermittelt. Wir ermöglichen den Teilnehmern damit eigenständig Go-Programme zu schreiben.


Speziell im Server/Cloud Umfeld ist Go stark am Wachsen (siehe Docker, Kubernetes,...) und findet immer öfters Einsatz in Webapplikation und verteilten Anwendungen (Microservices).
Go hat eine sehr einfache Syntax, welche stark von C aber auch von Pascal geprägt ist, weshalb der Einstieg in die Sprache selbst mit überschaubarem Aufwand zu bewerkstelligen ist. Daher können wir im Rahmen des Einsteigerseminars die gesamte Syntax inklusive Coding-Guidelines behandeln.

Zum Entwickeln von nebenläufigen Anwendungen liefert Go einen Mechanismus für leichtgewichtige Prozesse (Goroutines), welche es sehr einfach machen, nebenläufige bzw. parallel laufende Programme umzusetzen. Diese Go Mechanismen zur optimierten Auslastung von Multi-Core Prozessoren werden ebenfalls im Seminar behandelt.

Neben dem sprachspezifischen Teil werden überblickshaft und anhand konkreter Fälle spezifische Anwendungsbeispiele kurz beleuchtet:
  • Webentwicklung (Backend)
  • Kommandozeilenprogramme
  • Verteilte Programmierung / Microservices

 

Zielgruppen

  • Erfahrene Softwareentwickler*innen welche einen unkomplizierten, schnellen Einstieg in die Programmiersprache Go suchen

Vorkenntnisse

  • Grundlegende Programmierkenntnisse
  • Erfahrung mit einer anderen objektorientierten Programmiersprache ist von Vorteil

Detail-Inhalte

Hintergrundinformationen
  • Motivation zur Entwicklung der Sprache
  • Einflüsse von Sprachen/Paradigmen

Überblick Datenstrukturen (Basic & Composite Types)

Funktionen
  • Bedeutung hinsichtlich funktionaler Programmierung
  • Eigenheiten von Go Funktionen (Multiple Return Value, Variadic Functions, Defered Function Calls,...)

Installation
  • Go Basis
  • Entwicklungsumgebung und Go-Plugins (Tools, Autocompletion, Live-Compile,...)

Interfaces
  • Spezielle Bedeutung/Funktionsweise
  • Unterscheidung zu anderen Programmiersprachen
  • Idiomatische Verwendung von Interfaces

Diskussion Programmierparadigma
  • Objektorientierte Programmierung mit Go?
  • Möglichkeiten zur Strukturierung von Datenobjekten und Funktionalität (struct/interface embedding,...)

Nebenläufigkeit in Go
  • Teilen von Daten durch Kommunikation statt Kommunikation durch Teilen von Daten
  • Goroutines, Channels sowie deren Zusammenspiel
  • Gängige Concurrency Algorithmen/Pattern mit Goroutines und Channels implementieren

Programmierstil in Go
  • Muster/Regeln/Richtlinien
  • Diskussion der Kernaussagen über "Go Proverbs" (Rob Pike)

Tooling
  • Testing/Unit-Tests
  • Codeverwaltung, Go Modules, Vendoring
  • Deployment/Cross-Compiling

Ausblick Spezialthemen
Der Trainer stellt an Hand konkreter Implementierungsbeispielen vor, was mit Go möglich ist und welche Inhalte bei Aufbauseminaren daher behandelt werden.
  • Webentwicklung (Backend)
  • Kommandozeilenprogramme
  • Verteilte Programmierung / Microservices

Downloads

Terminanfrage

Ab  1.715,-*

*Preis pro Teilnehmer*in ohne Zusatzoptionen, exkl. MwSt.

Sie haben Fragen?

Ihr ETC Support

Kontaktieren Sie uns!

+43 1 533 1777-99

Hidden
Hidden
Hidden

Unsere Empfehlungen für Sie

18.12.2023+2
 2.875,-