C++ Grundläggande programmering

C++ är standardspråket för att implementera många former av objektorienterade lösningar, men det är samtidigt ett av de svåraste språken att fullständig bemästra. I den här utbildningen beskriver vi språkets egenskaper och standardbiblioteket för att ge en solid grund för fortsatt arbete.

Utbildningen är en blandning av teori och praktiska övningar.

Målgrupp
Utvecklare som nyligen börjat arbeta med C++. Notera att detta är inte en introduktion till i programmering.

Mål
Efter kursen slut har du en förståelse för hur du utvecklar professionellt i C++ och skriver effektiv C++-kod.

Bakgrundskunskaper
Du behöver ha erfarenhet från programmering i något annat programmeringsspråk. Kunskap om objektorienterad utveckling är en fördel.

Språk
Utbildningsmaterialet är skrivet på engelska. Utbildningen kan genomföras antingen på svenska eller engelska.

Kurslängd
Kursen genomförs under tre dagar.

Innehåll
I kursen går vi igenom teorin och varvar med praktiska övningar. Vi går igenom:
 

Översikt C++
    Språkets utveckling och versioner
    Introduktion till objektorienterad programmering

Typer och variabler
    Fundamentala typer
    Härledda typer
    Deklaration vs definition
    Pekare och referenser
    Synlighet och livstid

Skapa klasser
    Medlemsvariabler
    Inkapsling
    Medlemsfunctioner och fria funktioner
    Konstruktorer

Att bygga större C++-program
    Kompilator och länkare
    Bibliotek
    Att dela kod

Kontrollstrukturer
    Programsatser
    Operatorer
    Selektion
    Iteration

Mer om klassser
    Konstruktorer på djupet
    Destruktorer
    Klasser som medlemmar
    Överlagring av funktioner
    Defaultargument

Minne
    Stack, heap och statiskt minne
    Mer om pekare och referenser
    Dynamiskt allokerat minne

Introduktion till standardbiblioteket
    Översikt
    Att använda templates
    Samlingsklasser, iteratorer och algoritmer

Arv
    Utökning av en befintlig klass
    Komposition/aggregat som alternativ till arv
    Typkonverteringar

Polymorfism
    Överrida implementation
    Abstrakta basklasser
    Interface

Exceptions
    Jämförelse med traditionell felhantering
    Kasta och fånga exceptions
    Exceptionclasser

Samlingsklasser och iteratorer i standardbiblioteket
    Syfte och egenskaper för de olika samlingsklasserna
    Iteratortyper
    Avancerade iteratorer

Algorithmer i standardbiblioteket
    Algorithmernas arbetssätt
    "In-place" and kopiering
    Predikat
    Kortfattad introduktion till C++ "ranges"

Mer information
För mer information kontakta Åsa Detterfelt, 070-659 58 12, alternativt maila asa.detterfelt@mindroad.se.

Kurstillfällen:
Stockholm 13 - 15/1, 24 - 26/2, 21 - 23/4,  23 - 25/6
Göteborg 20 - 22/11, 17 - 19/2, 17 - 19/3, 19 - 21/5
Linköping 10 - 12/3