startVi kan utbildning!Vad vill du kunna?
Nu kan du gå alla våra kurser på distans! Läs mer

NFI Utbildning

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

Skriv ut
Kursfakta

Längd:  3 dagar


Är du intresserad av denna kurs?
Ring 08-615 19 60 eller anmäl intresse här.
Intresseanmälan
Kursutbud > Programmering > GO (Golang) Programming Foundation

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.

Tipsa kollega  
Kursfakta

Längd:  3 dagar


Är du intresserad av denna kurs?
Ring 08-615 19 60 eller anmäl intresse här.
Intresseanmälan

 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.

 Vem bör deltaga?

Utbildningen vänder sig till utvecklare som vill komma igång med programmering i Go (Golang).
 

 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!

 Övningar

Kursen innehåller ett flertal övningar där du får träna på de olika avsnitten i kursen.

 Lärare

Stefan Holmberg
Stefan är mycket erfaren kursledare och har jobbat med systemutveckling 1994. Stefan är en fullstack utvecklare och har bred kunskap som programmerare (C/C++, C#, Java, Golang, Python m m).

 Förkunskaper

Man bör ha kunskaper motsvarande kursen Grundkurs i programmering

 Kursinnehåll

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

Boka
 E-post: info@nfi.se  Tel: 08-615 19 60  Hitta till oss