NFI Utbildning

Kontaktuppgifter
tfn: 08-615 19 60(vx)
epost: info@nfi.se
Besöksadress:
Götgatan 14
118 46 Stockholm

GO (Golang) Programming Foundation

Golang är det moderna språket som används på stora företag som Google, Uber och Twitch. Enkelt att lära men samtidigt utvecklat med prestanda och nätverksapplikationer i fokus.

Översikt

Kursen är normalt 3 dagar men kan anpassas till längre eller kortare utbildning

Företagsintern kurs

Vill ni genomföra denna kurs skräddarsydd internt hos er?

Kursmål

Efter kursen kommer du ha goda kunskaper i hur man skapar olika typer av program i Golang. Vi kommer skapa såväl vanliga textbaserade applikationer som s.k REST-APIer och du kommer ha en förståelse i vad som gör Golang till ett så oerhört effektivt språk. Och det gäller inte bara prestanda (eftersom språket utvecklats i en tid där multiprocessorer är standard är parallellism självklar). Utan också hur koden blir enkel och därigenom inte så kostsam att förvalta och förändra.

Sammanfattning

Under de senaste åren har ett flertal nya systemprogrammeringsspråk börjat få fotfäste. Av dem har Golang (kallas också Go) etablerat sin ställning som det överlägset populäraste alternativet. Golang är ett enkelt, säkert programmeringsspråk med fokus på parallellprogrammering och utvecklarergonomi.
Golang beskrivs ofta som ett språk som är enkelt att lära sig om man sedan tidigare kan ett eller flera programspråk. Det anses bjuda på en rolig utvecklarupplevelse varvat med hög produktivitet.
I den här kursen börjar vi med att orientera oss i bakgrunden, varifrån och varför kom språket till. Var används det och när är det relevant?
Efter att vi installerat IDE och debugger, kommer vi att utforska språket vad gäller datatyper, loopar, if-satser, funktioner etc. Just funktioner i Golang är lite speciella då de kan returnera flera värden. Detta underlättar t.ex. felkoder.
Golang liknar C# och C++ såtillvida att det finns möjlighet att skriva effektiv kod. Pekare och minneshantering är därmed en realitet. Vi går igenom minnesmodeller med stack och heap för att förstå hur det funkar.
Att välja rätt datastrukturer är en viktig komponent för optimal prestanda. I den här kursen undersöker vi vad det finns för alternativ i Golang.
Golang är ett "general purpose" språk, då det går att programmera de flesta typer av applikationer med det, men vi ska fokusera lite mer på webbapplikationer och microservices. Vi kommer även att använda en MySQL databas för datalagring.
Med andra ord, efter kursen har du med dig både kunskap och kod för att bygga användbara Golang-applikationer!
 
Utbildningen vänder sig till utvecklare som vill komma igång med programmering i Go (Golang).

Introduktion

  • Bakgrund. Varför ett till programmeringsspråk? Vilka problem löser Golang bättre än
  • Vilka använder Go?
  • Installation
  • IDE, debugger
  • Första programmet
  • Packages, main och imports
  • Rubrik...

Grunder

  • Datatyper
  • Variabler och tilldelningar
  • Typkonverteringar
  • Loopar (for-satser)
  • Val (if-satser, else och switch)

Funktioner

  • parametrar
  • returvärde/värden
  • anrop
  • felhantering med ”error”

Pekare

  • minnesmodell, stack/heap
  • scope, hur länge lever variabler
  • pekare som parameter

Sammansatta datatyper

  • strukturer
  • arrayer
  • slices/range
  • maps
  • “klasser” (strukturer med metoder)
  • interfaces

I/O

  • Readers
  • Writers
  • Filhantering

Web

  • Hantera webbanrop
  • Routing, URL till funktion
  • Implementera ett REST API
  • Microservice
  • Göra webbanrop (anropa APIer)

Databas

  • Hämta/uppdatera data i MySQL eller motsvarande
  • Använda en s.k Object Relational Mapper

Avancerat:

  • Flertrådade program med s.k Goroutines
  • Channels
  • Synkronisering
Kursen innehåller ett flertal övningar där du får träna på de olika avsnitten i kursen.
Man bör ha kunskaper motsvarande kursen Grundkurs i programmering
 

Företagsintern kurs

Vill ni genomföra denna kurs skräddarsydd internt hos er?

Översikt

Kursen är normalt 3 dagar men kan anpassas till längre eller kortare utbildning
 Tipsa kollega