fbpx
  • nl
  • en

Cursus Go Programmeren

Cursus Go Programmeren
Regio:
  • Modules
  • Cursus
  • Inhoud
  • Algemene informatie
    Algemeen
  • Reviews
  • Module 1 : Intro Go

    Module 2 : Language Syntax

    Module 3 : Operators and Control Flow

    Origins of Go
    Features of Go
    Compilation Model
    Type Inference
    Concurrency Support
    Go Routines
    Native Binaries
    Intentionally Exclusions
    Inheritance
    Operator Overloading
    Installing Go
    Comments
    Go Programs
    Identifiers
    Data Types
    Integers and Floats
    Strings and Booleans
    Derived Types
    Variable Declaration
    Static Type Declaration
    Type Inference
    lvalues and rvalues
    Constants
    String Literals
    UTF-8 Sequences
    Immutability
    Operator Types
    Miscellaneous Operators
    Operator Precedence
    if and else
    Nested if
    switch Statement
    select Statement
    for Loop
    Nested Loops
    Infinite Loops
    range Keyword
    break and continue
    goto Statement

    Module 4 : Functions

    Module 5 : Arrays

    Module 6 : Pointers

    Function Definition
    Function Declaration
    Calling Functions
    Local and Global Variables
    Parameters
    Return Values
    Call by Value and by Reference
    Functions as Values
    Function Closures
    Methods
    Variadic Functions
    Recursion
    Array Types
    Declaring Arrays
    Initializing Arrays
    Accessing Array Elements
    Multi Dimensional Arrays
    Passing Arrays
    Variables and Adresses
    Slices
    Nil Slice
    Subslicing
    len() and cap() Functions
    append() and copy() Functions
    Address Operator
    Pointer Type
    Accessing Pointers
    Pointer Arithmetic
    Comparison C Pointers
    Uage of Pointers
    Dereferencing Pointers
    Nil Pointers
    Array of Pointers
    Pointer to Pointer
    Pointers as Parameters
    Type Casting

    Module 7 : Data Structures

    Module 8 : Error Handling

    Module 9 : Concurrency

    User Defined Data Types
    type Statement
    struct Keyword
    Structure Definition
    Accessing Structure Members
    Passing Structures
    Pointers to Structures
    Object Oriented Programming
    Structs versus Classes
    Composition over Inheritance
    Polymorphism
    Maps, Keys and Values
    make() and delete() Function
    Interfaces
    Error is Type
    Error Interface
    Panic Interface
    Reasons for Panic
    Comparison to Exceptions
    Using Multiple Return Values
    Unrecoverable Error
    Programmer Error
    Defer Execution
    Recover Interface
    Runtime panics
    Goroutines
    Stack Trace
    Analyzing Stack Traces
    Concurrency versus Parallelism
    Goroutines versus Threads
    Multiplexing
    Channels
    Race Conditions and Deadlock
    Multiple Goroutines
    Declaring Channels
    Sending and Receiving with Channels
    Blocking by Default
    Unidirectional Channels
    Buffered Channels
    Worker Pools
    WaitGroup
    Select and Mutex
  • Doelgroep Cursus Go Programmeren

    Cursus Go ProgrammerenDe cursus Go Programmeren is bedoeld voor developers die willen leren programmeren in de de taal Go en de mogelijkheden ervan willen leren kennen.

    Voorkennis training Go Programmeren

    Om aan deze cursus deel te nemen is voorafgaande kennis van en ervaring met programmeren in een moderne programmeertaal zoals Java, C# of Python noodzakelijk.

    Uitvoering cursus Go Programmeren

    De theorie wordt behandeld aan de hand van presentaties. Illustratieve demo’s worden gebruikt om de behandelde concepten te verduidelijken. Er is voldoende gelegenheid om te oefenen en afwisseling van theorie en praktijk. De cursustijden zijn van 9.30 tot 16.30.

    Certificering cursus Go Programmeren

    De deelnemers krijgen na het goed doorlopen van de cursus een officieel certificaat Go Programmeren.

  • Cursus Go Programmeren

    In de cursus Go Programmeren leren de deelnemers de syntax van de programmeertaal Go en de stijl waarin Go programmatuur wordt geschreven. De programmeertaal Go is gebaseerd op de ervaringen die zijn opgedaan met de gecompileerde zoals talen C, C++ en Java en met geïnterpreteerde talen zoals Python en Ruby. Go is syntactisch vergelijkbaar met C, maar met de extra voordelen van memory safety, garbage collection, structural typing en concurrency gebaseerd op Communicating Sequential Processes (CSP). In de cursus Go Programmeren wordt ingegaan op de syntax van Go met data types en type inference, arrays, control flow en operators evenals functions en closures. Voorts wordt aandacht besteed aan het gebruik van pointers in Go, het verschil met pointers in C, pointer arithmetic en pointers tot pointers. Wat classes betreft wordt ingegaan op de twee manieren waarop Go een alternatief biedt voor traditionele inheritance. De eerste is embedding dat kan worden beschouwd als een geautomatiseerde vorm van composition of delegation. De tweede zijn de Go interfaces, die runtime polymorphism bieden. Ook de specifieke manier van error afhandeling in Go met het error en panic interface komt aan de orde. Tenslotte wordt ingegaan op concurrency in Go met Go routines, sending and receiving met channels en worker pools.

  • Cursusvorm

    Al onze cursussen zijn klassikale cursussen waarbij de cursisten aan de hand van een ervaren trainer met diepgaande materie kennis door de stof worden geleid. Theorie wordt steeds afgewisseld met oefeningen.

    Maatwerk

    We doen ook maatwerk  en passen dan de cursusinhoud aan op uw wensen. Op verzoek gaan we ook in op uw praktijkcases.

    Cursustijden

    De cursustijden zijn in pricipe van 9.30 tot 16.30. Maar we zijn hierin flexibel. Soms moeten mensen namelijk kinderen naar de opvang brengen of halen en komen andere tijden hun beter uit. In goed overleg kunnen we dan andere cursustijden afspreken.

    Hardware

    Wij zorgen voor de computers waarop de cursus gehouden kan worden. Op deze computer is de voor de cursus benodigde software al geinstalleerd. U hoeft geen laptop mee te nemen om aan de cursus te kunnen deelnemen. Als u liever op uw eigen laptop werkt kunt u hem desgewenst meenemen. De benodigde software wordt dan aan het begin van de cursus geinstalleerd.

    Software

    Onze cursussen worden over het algemeen gegeven met Open Source software zoals Eclipse, IntelliJ, Tomcat, Pycharm, Anaconda en Netbeans. Het digitale cursusmateriaal krijgt u na de cursus mee naar huis.

    Lunch

    De cursus is inclusief lunch die we in een restaurantje op loopafstand van het cursuslokaal gebruiken.

    Locaties

    De cursussen worden op diverse plaatsen in het land gepland. Een cursus gaat op een locatie door als er zich minimaal 3 mensen voor die locatie inschrijven. Als er inschrijvingen voor verschillende locaties zijn gaat de cursus door op onze hoofdlocatie is Houten net onder Utrecht. Een cursus op onze hoofdlocatie gaat ook door bij 2 inschrijvingen en regelmatig ook bij 1 inschrijving.  Overigens doen we ook cursussen op de locatie van de klant als men daar prijs op stelt.