ZFI Logo GOGO

GOGO-0118, Beginn Mo 22. Jan, Dauer 5 Tage

Google Go Programmierung (golang) (GOGO-0118)

Kurspreis 3500 CHF

 

Kurstermine

 

1. Tag :  Mo 22. Jan 2018
2. Tag :  Di 23. Jan 2018
3. Tag :  Mi 24. Jan 2018
4. Tag :  Mo 29. Jan 2018
5. Tag :  Di 30. Jan 2018

GOGO-0218, Beginn Mo 5. Mar, Dauer 5 Tage

Google Go Programmierung (golang) (GOGO-0218)

Kurspreis 3500 CHF

 

Kurstermine

 

1. Tag :  Mo 5. Mar 2018
2. Tag :  Di 6. Mar 2018
3. Tag :  Mi 7. Mar 2018
4. Tag :  Di 13. Mar 2018
5. Tag :  Mi 14. Mar 2018

GOGO-0318, Beginn Mi 2. Mai, Dauer 5 Tage

Google Go Programmierung (golang) (GOGO-0318)

Kurspreis 3500 CHF

 

Kurstermine

 

1. Tag :  Mi 2. Mai 2018
2. Tag :  Do 3. Mai 2018
3. Tag :  Fr 4. Mai 2018
4. Tag :  Di 8. Mai 2018
5. Tag :  Mi 9. Mai 2018

Kursbeschreibung

Google Go Programmierung (golang)
Eine Einführung in die Programmierung mit Google Go (golang)
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.

Verwandte Kurse

Ihr Nutzen

  • Sie kennen die Ziele und Architektur von Google Go
  • Sie kennen die zentralen Sprachkonzepte von Google Go
  • Sie können Google Go Programme schreiben, builden und ausführen, oder einfach gesagt: "Sie können mit Go programmieren".
  • Sie wissen wie man grössere Google Go Programme strukturiert und erstellt.
  • Sie kennen die wichtigsten Quellen im Internet

Voraussetzungen

Praxiserfahrung einer Programmiersprache wie Javascript, PHP, Visual Basic oder ähnlich.

Teilnehmerkreis

Programmierer, Entwickler, Projektleiter

Unterlagen

  • Tutorial
  • Internet / Intranet
  • Begleitbuch

Folgekurse

Teilnehmerbeitrag

Der Teilnehmerbeitrag versteht sich rein netto. Das ZFI ist (gemäss MwSt-Gesetz) nicht Mehrwertsteuerpflichtig und erhebt somit keine MwSt. Bei länger als einen Monat dauernden Lehrgängen ist die Zahlung des Teilnehmerbeitrages in mehreren Raten möglich (pro rata temporis).

Kursinhalt

  • Einführung und JumpStart
  • Installation und IDE
  • Pakete und Imports
  • Funktionen
  • Variablen und Scope
  • Basistypen, Typumwandlungen, Typinferenz, Nullwerte, Konstanten, Auto Increment (iota)
  • Entscheidungen mit if und switch
  • For-Schleife
  • Pointer und Strukturen
  • Arrays und Slices
  • Maps
  • make und new
  • Funktionen und Closures
  • Verzögerte Ausführungen mit defer
  • Naming Conventions, Exportables
  • Panic und Recover
  • Methoden und Strukturen
  • Interfaces
  • Stringer Interface
  • Objektorientierte Programmierung mit Go und Interfaces
  • Fehlerbehandlung
  • Reflection
  • Das io-Packet (Reader und Writer)
  • Goroutinen (schlanke Threads) und Kanäle
  • Synchronisieren mit sync.Mutex
  • Package Testing, Unit Testing
  • Benchmarks
  • Subtests, Sub-benchmarks
  • Diverses