Introduction to Programming in Go

Introduction to Programming in Go is een praktijkgerichte cursus waarin je de programmeertaal Go van Google leert kennen. De training Introduction to Programming in Go biedt zowel beginnende als ervaren softwareontwikkelaars inzicht in de basis en geavanceerde toepassingen van Go, de standaard voor cloud-native softwareontwikkeling. Door de training Introduction to Programming in Go te volgen, ontdek je stap voor stap de veelzijdigheid van Go en vergroot jij jouw productiviteit en programmeerkennis.

  • Offerte aanvragen

    "*" geeft vereiste velden aan

    Offerte aanvraag training
    Vul hier al je gegevens in waarvoor je een offerte wilt ontvangen.
    Vul hier jouw naam in*
    Vermeld eventuele specifieke wensen en het aantal deelnemers.
    Wij zijn dé IT-opleider van het noorden
    • Train bij ons in Drachten of op jouw eigen locatie.
    • Klanten geven ons een 9.2
    • Erkende trainers.
    • Ontvang een certificaat na deelname!

    Kom je er niet uit?
    Laat ons je helpen!

    Contact opnemen

    Foto van medewerker van Startel (Pieter Fokkema).
    x
  • Incompany

    "*" geeft vereiste velden aan

    Vul hier jouw naam in*
    Vermeld eventuele specifieke wensen en het aantal deelnemers.
    Wij zijn dé IT-opleider van het noorden
    • Train bij ons in Drachten of op jouw eigen locatie.
    • Klanten geven ons een 9.2
    • Erkende trainers.
    • Ontvang een certificaat na deelname!

    Kom je er niet uit?
    Laat ons je helpen!

    Contact opnemen

    Foto van medewerker van Startel (Pieter Fokkema).
    x
  • Download brochure

    "*" geeft vereiste velden aan

    Brochure downloaden
    Vul hier al je gegevens in om de brochure te downloaden.
    Wij zijn dé IT-opleider van het noorden
    • Train bij ons in Drachten of op jouw eigen locatie.
    • Klanten geven ons een 9.2
    • Erkende trainers.
    • Ontvang een certificaat na deelname!

    Kom je er niet uit?
    Laat ons je helpen!

    Contact opnemen

    Foto van medewerker van Startel (Pieter Fokkema).
    x

Breid je expertise uit!

  • Trainen bij onze locatie in Drachten
  • Krijg een certificaat van deelname
  • Leer van ervaren trainers

€3195,- Excl. BTW

Algemene omschrijving

Introduction to Programming in Go is een training waarin je wordt meegenomen in de wereld van Go, de programmeertaal ontwikkeld door Google die uitblinkt in snelheid en efficiëntie. Als programmeertaal is Go inmiddels dé standaard voor het ontwikkelen van cloud-native applicaties. Door het unieke ontwerp biedt de programmeertaal Go zowel uitstekende prestaties als verhoogde productiviteit voor softwareontwikkelaars. Hierdoor blinkt Go uit in de wereld van hedendaagse programmeertalen.

De cursus Introduction to Programming in Go is voornamelijk ontwikkeld voor softwareontwikkelaars die zich willen verdiepen in de kern van de programmeertaal Go. Van de basisbeginselen tot geavanceerde patronen voor grootschalige applicaties, in de training Introduction to Programming in Go krijg je grondig overzicht van de mogelijkheden van Go. Daarnaast is training Introduction to Programming in Go praktisch en interactief, waardoor je stap voor stap de veelzijdigheid van Go zult ontdekken en toepassen.

Ten slotte is de training Introduction to Programming in Go zowel geschikt voor beginnende programmeurs die Go willen ontdekken als ervaren softwareontwikkelaars die hun kennis en vaardigheden uit willen breiden met Go. Of je nu een stevige basis wilt leggen in programmeren of jouw expertise uit wilt breiden, met de cursus Introduction to Programming in Go krijg je alles in handen om professional aan de slag te gaan met de programmeertaal Go!

Doelgroep

De training Introduction to Programming in Go is met name geschikt voor de volgende mensen:

  • Softwareontwikkelaars die Go willen leren om efficiënte, schaalbare applicaties te ontwikkelen.
  • Back-end engineers die op zoek zijn naar een kennismaking met een programmeertaal die ontworpen is voor snelheid, eenvoud en krachtige gelijktijdigheid.
  • Systeembeheerders en DevOps Engineers die Go willen gebruiken als hulpmiddel, het ontwikkelen van scripts of voor infrastructuurbeheer.
  • Studenten en nieuwe programmeurs die klaar zijn om hun programmeerkennis en -vaardigheden uit te breiden met een programmeertaal die afgestemd is op de hedendaagse behoeften binnen het vakgebied van softwareontwikkeling.

Leerdoelen

Door de training Introduction to Programming in Go te volgen, zul je de volgende kennis en vaardigheden verkrijgen:

  • Beheer de basis van Go: Begin met de kernprincipes zoals datatypen, controlestructuren en functies, die de basis leggen voor het ontwikkelen van efficiënte en betrouwbare Go-code. Hierbij ligt de nadruk op het schrijven van Idiomatisch Go.
  • Ontdek gegevensstructuren en gelijktijdigheid: Verkrijg praktische vaardigheden in de unieke datastructuren van Go, zoals slices, maps en structs. Verdiep je daarbij in de krachtige concurrency model van Go met behulp van goroutines en channels.
  • Leer geavanceerde projectpatronen en architecturen: Naarmate je ontdekt hoe jij grote Go-projecten kunt organiseren, hoe jij TDD-praktijken (Test-Driven Development) kunt volgen, hoe jij afhankelijkheidsinjectie kunt implementeren en geavanceerde ontwerppatronen zoals injectie kunt implementeren en geavanceerde ontwerppatronen, zoals een zeshoekige architectuur.
  • Samenwerken met andere programmeertalen: Leer een brug te slaan tussen Go en programmeertalen zoals C, waardoor het nut van Go in omgevingen met meerdere programmeertalen toeneemt en jouw vermogen om Go te integreren toeneemt met omgevingen en ontdek hoe jij Go kunt integreren met legacy code of met externe bibliotheken.
  • Verleg jouw grenzen met WebAssembly (WASM): Leer te begrijpen hoe jij Go-code kunt compileren naar WebAssembly, zodat je Go-scripts uit kunt voeren binnen webomgevingen en spannende nieuwe mogelijkheden met Go-WASM interoperabiliteit.

Ten slotte zul je aan het einde van de training Introduction to Programming in Go jouw opgedane kennis en vaardigheden toe te passen om Go-scripts te ontwikkelen, te structureren en te optimaliseren. Hierdoor zul je bekwaam worden in een programmeertaal die bekend staat om zijn eenvoud, efficiëntie en veelzijdigheid in het ontwikkelen van hedendaagse softwareoplossingen.

Voorkennis

Voordat je deelneemt aan de training Introduction to Programming in Go, raden wij aan dat je ervaring hebt met andere programmeertalen zoals Python, JavaScript, C, C++ of Java. Tevens biedt de training Introduction to Programming in Go jou de basiskennis en -vaardigheden.

Door de training Introduction to Programming in Go te volgen zul je geleidelijk meer geavanceerde onderwerpen verkennen. Dit maakt de training Introduction to Programming in Go toegankelijk voor beginners en ervaren programmeurs zullen meer diepgang verkrijgen.

Onderwerpen

Dag 1: Basisprincipes van Go-programmeren

Deel 1: Overzicht van de cursus en basisprincipes van Go

  • Inleiding op de cursus en doelen.
  • Overzicht van de Go-taal en filosofie.
  • Instellen van de Go-omgeving (installatie en configuratie).
  • Ontwikkeltools kiezen en installeren.
  • Inleiding op Go-pakketten.

Deel 2: Eerste stappen in Go

  • Je eerste Go-programma schrijven.
  • Begrip van de bouwstenen van Go.
  • Gereserveerde trefwoorden en naamgevingsconventies.
  • De Go-standaardbibliotheek verkennen.
  • Variabelen en constanten (declaratie, levensduur en scope).
  • Pointers begrijpen in Go.

Deel 3: Basisgegevens en constanten

  • Overzicht van de basisgegevens in Go.
  • Werken met getallen, strings en booleans.
  • UTF-8 en de Unicode-basis van Go.
  • Werken met strings in Go.
  • Inleiding op de iota-constantegenerator.

Deel 4: Werken met collecties

  • Begrip van complexe datatypes in Go.
  • Arrays en slices: creatie en manipulatie.
  • Maps: sleutel-waarde opslag in Go.

Deel 5: Structs in Go

  • Structs begrijpen en hun gebruik.
  • Letterlijke structs en gegevensbeheer met structs.
  • Struct-embedding voor compositie.
  • Werken met anonieme velden in structs.

Deel 6: Functies in Go

  • Functies declareren en aanroepen.
  • Gebruik van variadische en recursieve functies.
  • Functie-objecten en anonieme functies begrijpen.
  • Werken met deferred functies voor opruimen.

Dag 2: Pakketten, Modules en Foutenafhandeling

Deel 1: Pakketten en code-organisatie

  • Pakketten begrijpen in Go.
  • Soorten pakketten en hun gebruik.

Deel 2: Modules in Go

  • Inleiding op Go-modules en hun geschiedenis.
  • Principe van semantische versiebeheer.
  • Eigen modules creëren en beheren.

Deel 3: Testen, Benchmarking en Profilerings in Go

  • Testen in Go.
  • Benchmarking in Go.
  • Profilering in Go.
  • Profile Guided Optimization.

Deel 4: Foutenafhandeling

  • Effectieve foutenafhandeling in Go.
  • Gebruik van panic en recover.
  • Patronen en best practices voor foutenafhandeling.

Deel 5: Objectgeoriënteerd programmeren in Go

  • Inleiding op objectgeoriënteerde principes in Go.
  • Go’s benadering van OOP en wat het mist.
  • Structs en pointer-ontvangers als alternatieven.
  • Data hiding en encapsulation.

Deel 6: Interfaces en contracten

  • Interfaces creëren en gebruiken om contracten af te dwingen.
  • Interface-satisfactie en type-aannames.
  • Gebruik van interface-switches voor flexibele code.

Deel 7: Generics in Go

  • Concept van Generics.
  • Generics gebruiken in de standaardbibliotheek.

Deel 8: I/O en Netwerken

  • Bestandsoperaties en bestandshandling in Go.
  • JSON-serialisatie en -marshalling.
  • Een HTTP-server bouwen in Go.
  • Inleiding op het ontwikkelen van RESTful API's.

Deel 9: Templating in Go

  • Werken met Go-templating voor dynamische inhoud.

Dag 4: Concurrency en Geavanceerde Concepten in Go

Deel 1: Concurrency in Go

  • Inleiding tot concurrency-concepten.
  • Gebruik van goroutines, waitgroups en channels.
  • Gebufferde vs. ongebufferde kanalen.
  • Werken met meerdere kanalen en datastroombeheer.
  • Gebruik van mutexen en atomaire operaties voor kritieke secties.
  • Patronen en best practices voor concurrency.

Deel 2: Iterators in Go

  • Concept van Iterators.
  • Iterators in de standaardbibliotheek.
  • Eigen iterator schrijven.

Deel 3: Test-Driven Development (TDD) in Go

  • Inleiding op de TDD-principes en -praktijken.
  • Tests schrijven met het testing-pakket van Go.
  • Testreeksen structureren en testen van edge cases.
  • Gebruik van tabelgestuurde tests in Go.

Deel 4: Dependency Injection en Ontwerppatronen

  • Inleiding op de principes van dependency injection.
  • Dependency injection implementeren in Go.
  • Veelvoorkomende ontwerppatronen in Go, zoals singleton, factory en adapter.
  • Projecten organiseren voor schaalbaarheid en onderhoudbaarheid.

Deel 5: Organisatie van een Go-project

  • Structureren van een grootschalig Go-project: pakketten, modules en mappenstructuur.
  • Hexagonale architectuur (Ports en Adapters).
  • Beheer van dependencies met Go-modules en vendoring.
  • Best practices voor codebeoordeling en refactoring.

Deel 6: C Code aanroepen vanuit Go

  • Inleiding op cgo: schrijven van C-bindings in Go.
  • C-bibliotheken importeren en Go-wrappers maken.
  • Geheugenbeheer en foutenafhandeling met cgo.
  • Voorbeelden van het integreren van C-bibliotheken in Go.

Deel 7: Go Code aanroepen vanuit C

  • Go-functies exporteren voor gebruik in C.
  • Gebruik van cgo met statische en gedeelde bibliotheken.
  • C headers creëren vanuit Go-code.
  • Voorbeeld: Go-modules integreren in C-applicaties.

Deel 8: Inleiding op WebAssembly

  • Overzicht van WebAssembly en gebruikscasussen.
  • Waarom WebAssembly gebruiken met Go.
  • Go compileren naar WebAssembly (WASM).
  • Interactie met JavaScript vanuit WebAssembly Go-code.
  • Opzetten en testen van een basis Go-WASM-applicatie binnen een webomgeving.

Trainingsdata en inschrijven

Hieronder is een overzicht te vinden van trainingsmogelijkheden voor de Introduction to Programming in Go training, met zowel klassikale als virtuele trainingen. Selecteer de best passende optie en start jouw reis naar succes.

  • Klassikaal
  • Virtueel
  • Startdatum
    Locatie
    Duur
    Prijs
    Inschrijven
    • 28-01-2025
      Startel (Drachten)
      4 bijeenkomsten
      • dinsdag 28 januari 2025 van 09:00 tot 17:00
      • woensdag 29 januari 2025 van 09:00 tot 17:00
      • donderdag 30 januari 2025 van 09:00 tot 17:00
      • vrijdag 31 januari 2025 van 09:00 tot 17:00
      3195,-
    • 24-02-2025
      Startel (Drachten)
      4 bijeenkomsten
      • maandag 24 februari 2025 van 09:00 tot 17:00
      • dinsdag 25 februari 2025 van 09:00 tot 17:00
      • woensdag 26 februari 2025 van 09:00 tot 17:00
      • donderdag 27 februari 2025 van 09:00 tot 17:00
      3195,-
    • 25-03-2025
      Startel (Drachten)
      4 bijeenkomsten
      • dinsdag 25 maart 2025 van 09:00 tot 17:00
      • woensdag 26 maart 2025 van 09:00 tot 17:00
      • donderdag 27 maart 2025 van 09:00 tot 17:00
      • vrijdag 28 maart 2025 van 09:00 tot 17:00
      3195,-
    • 22-04-2025
      Startel (Drachten)
      4 bijeenkomsten
      • dinsdag 22 april 2025 van 09:00 tot 17:00
      • woensdag 23 april 2025 van 09:00 tot 17:00
      • donderdag 24 april 2025 van 09:00 tot 17:00
      • vrijdag 25 april 2025 van 09:00 tot 17:00
      3195,-
    • 13-05-2025
      Startel (Drachten)
      4 bijeenkomsten
      • dinsdag 13 mei 2025 van 09:00 tot 17:00
      • woensdag 14 mei 2025 van 09:00 tot 17:00
      • donderdag 15 mei 2025 van 09:00 tot 17:00
      • vrijdag 16 mei 2025 van 09:00 tot 17:00
      3195,-
    • 10-06-2025
      Startel (Drachten)
      4 bijeenkomsten
      • dinsdag 10 juni 2025 van 09:00 tot 17:00
      • woensdag 11 juni 2025 van 09:00 tot 17:00
      • donderdag 12 juni 2025 van 09:00 tot 17:00
      • vrijdag 13 juni 2025 van 09:00 tot 17:00
      3195,-
    • 28-01-2025
      Virtual
      4 bijeenkomsten
      • dinsdag 28 januari 2025 van 09:00 tot 17:00
      • woensdag 29 januari 2025 van 09:00 tot 17:00
      • donderdag 30 januari 2025 van 09:00 tot 17:00
      • vrijdag 31 januari 2025 van 09:00 tot 17:00
      3195,-
    • 24-02-2025
      Virtual
      4 bijeenkomsten
      • maandag 24 februari 2025 van 09:00 tot 17:00
      • dinsdag 25 februari 2025 van 09:00 tot 17:00
      • woensdag 26 februari 2025 van 09:00 tot 17:00
      • donderdag 27 februari 2025 van 09:00 tot 17:00
      3195,-
    • 25-03-2025
      Virtual
      4 bijeenkomsten
      • dinsdag 25 maart 2025 van 09:00 tot 17:00
      • woensdag 26 maart 2025 van 09:00 tot 17:00
      • donderdag 27 maart 2025 van 09:00 tot 17:00
      • vrijdag 28 maart 2025 van 09:00 tot 17:00
      3195,-
    • 22-04-2025
      Virtual
      4 bijeenkomsten
      • dinsdag 22 april 2025 van 09:00 tot 17:00
      • woensdag 23 april 2025 van 09:00 tot 17:00
      • donderdag 24 april 2025 van 09:00 tot 17:00
      • vrijdag 25 april 2025 van 09:00 tot 17:00
      3195,-
    • 13-05-2025
      Virtual
      4 bijeenkomsten
      • dinsdag 13 mei 2025 van 09:00 tot 17:00
      • woensdag 14 mei 2025 van 09:00 tot 17:00
      • donderdag 15 mei 2025 van 09:00 tot 17:00
      • vrijdag 16 mei 2025 van 09:00 tot 17:00
      3195,-
    • 10-06-2025
      Virtual
      4 bijeenkomsten
      • dinsdag 10 juni 2025 van 09:00 tot 17:00
      • woensdag 11 juni 2025 van 09:00 tot 17:00
      • donderdag 12 juni 2025 van 09:00 tot 17:00
      • vrijdag 13 juni 2025 van 09:00 tot 17:00
      3195,-
  • 9,2 146 recensies

 

  • Persoonlijke aanpak
  • Ervaren trainers
  • 25 jaar ervaring