Concurrency in Go

89,00 €*

Lieferzeit Sofort lieferbar

Nebenläufigkeit ist eines der elegantesten Features, mit dem Go schneller und weniger fehleranfällig wird. Die Concurrency definiert Funktionen mithilfe von Goroutinen so, dass unabhängig voneinander ausgeführt werden können. Lernen Sie von unserem Experten Andreas Schröpfer, wie Sie Concurrency-Pattern anwenden, Data Races behandeln und ein erstes eigenes Projekt umsetzen.


  • Das Wichtigste der Programmiersprache Go anschaulich erklärt in 41 Lektionen
  • Prüfen Sie das Gelernte in Wissenstests
  • Stellen Sie den Experten Fragen über das Q&A-Modul
  • Machen Sie mit bei praktischen Übungen
Anzahl:
Artikel-Beschreibung

Entwickelt als alternative, kompilierbare Sprache zur Softwareentwicklung, hat sich um Go seit rund zehn Jahren weltweit eine große Community gebildet. Go orientiert sich an der Syntax von C, hat aber deutlich weniger Keywords als beispielsweise C++. Was Go so spannend macht, sind die Anwendungsbereiche skalierbare Netzwerkdienste, Cluster- und Cloud Computing. Ein wichtiges Entwicklungsziel war seither die Unterstützung von Nebenläufigkeit (Concurrency) mit nativen Sprachelementen.

Unser Experte Andreas Schröpfer, Consultant und Entwickler, widmet sich diesem Themenkomplex in einem kompakten und kurzweiligen Videokurs. Sie sind direkt dabei, wenn er anhand von Codebeispielen Probleme löst. Andreas Schröpfer lädt Sie ein, in einem kleinen abgeschlossenen Projekt ein Tool für die Kommandozeile zu entwickeln. Dabei zeigt er, wie die theoretischen Inhalte in die Praxis umgesetzt werden.

Alle Themen erklärt Andreas Schröpfer an echtem Code – Sie können also zeitgleich mitprogrammieren und die Funktionen etwa von Goroutinen selbst ausprobieren. Alles, was Sie darüber hinaus benötigen, haben wir in einem Repository bei GitHub hinterlegt. Außerdem erwarten Sie spannende Quizze, in denen Sie Ihr neu erworbenes Wissen direkt unter Beweis stellen können.

Länge:  215 Minuten




Alle Video-Lektionen im Überblick:

  • Vorstellung und Einführung
    • Herzlich willkommen zu diesem Kurs
  • Goroutinen
    • Kapitelüberblick
    • Was ist Concurrency?
    • Starten von Goroutinen
    • Anonyme Funktionen als Goroutinen
    • Quiz: Goroutinen
  • Channels
    • Kapitelüberblick
    • Kommunikation zwischen Goroutinen
    • Synchronisation mit Channels
    • Channels als In- und Output
    • Buffered Channel
    • Gerichteter Channel
    • Einen Channel schließen
    • Einen Channel auf Daten prüfen
    • Range über einen Channel
    • Die Verwendung von select
    • Race Conditions und Data Races
    • Quiz: Channels
  • Patterns
    • Kapitelüberblick
    • Vorstellung der Checkliste
    • Synchronisation von Goroutinen
    • Beenden von Goroutinen
    • Steuerung der Goroutinen mit context
    • Erzeugen von Daten mit einem Generator
    • Pipelines mit Channels
    • Verteilung von Daten mit fanout
    • Zusammenführung von Daten mit fanin
    • Channel of Channels
    • Goroutine als Worker
    • Koordination mit Semaphore
    • Beispiel einer State Machine
    • Quiz: Patterns
  • Projekt gocong
    • Kapitelüberblick
    • Argumente parsen und Grundstruktur bauen
    • Aufruf der Befehle
    • Abbruch mit Context
    • Weitere kleine Verbesserungen
  • Praxisbeispiele
    • Kapitelüberblick
    • Der http-Server als Basis für unsere Beispiele
    • Unit Test für die Simulation der Data Races
    • Verwendung eines Workers
    • Quiz: Praxisbeispiele
  • Abschluss
    • Fazit und Kursabschluss


    Über den Trainer:

    Andreas Schröpfer ist seit über zehn Jahren in der IT-Beratung tätig und seit 2015 begeisterter Gopher. Er ist Contributor bei mehreren Open-Source-Projekten, darunter Go Buffalo. Er gibt Workshops zu Go, ist Mentor bei excercism.io, unterrichtet unter anderem bei heise Academy und ist Buchautor zu Go.


    So lernen Sie mit diesem Videokurs:
    In den Videokursen von heise Academy lernen Sie IT-Themen anschaulich und verständlich. In den Videos schauen Sie den Experten bei der praktischen Arbeit zu und lassen Sie sich dabei alles genau erklären. Das Wissen ist in viele kleine Lernschritte und Aufgaben unterteilt – Sie können den Kurs Lektion für Lektion durcharbeiten oder gezielt zu Themen springen, die Sie interessieren. Die persönliche Lernumgebung der heise Academy hält viele Funktionen für Sie bereit, die Ihnen beim Lernen helfen können:


    • Flexibler Videoplayer mit vielen Steuerungsmöglichkeiten
    • Wissensquizzes zur Lernkontrolle
    • Lernhistorie und Lernfortschritt
    • Lesezeichen und Notizen
    • Volltextsuche in den Videos
    • Frage-den-Experten-Modul
    • Übungsmaterial zum Mitmachen
    • Responsive Web-App und Videostreaming für alle Endgeräte

    Technische Voraussetzungen:
    Für diesen Videokurs wird lediglich ein Browser (mit eingeschalteter JavaScript-Funktionalität) und eine Internetverbindung benötigt.

    Artikel-Details
    Anbieter:
    Heise Medien GmbH & Co. KG
    Artikelnummer:
    concurrency-in-go-2064
    Veröffentlicht:
    26.09.2022