C++ OO et embarqué
Beschrijving
De cursus behandelt de volgende technische inhoud
-
C++ syntaxis
-
C++ OO
-
C++ klassen en objecten
-
Derivatie en overerving
-
Uitzonderingen
-
Operator overbelasting
-
Modellen
-
I/O
-
Ingebed
Wat zijn de doelstellingen van de opleiding?
De doelstellingen van deze cursus zijn :
-
C++ syntax begrijpen en gebruiken
-
OO concepten toepassen op de C++ taal
-
Gebruik overerving concepten
-
Gebruiken van exception handling
-
Toepassen van operator overloading
-
Gebruik modellen
-
Gebruik van input/output
-
C++ gebruiken om embedded applicaties te ontwikkelen
Wat moet je weten om de cursus te volgen?
Kennis van een programmeertaal.
Opleidingsprogramma
C++-syntaxis (verschillen tussen C en C++)
-
Gegevens: definitie, initialisatie, gegevenstypen
-
Uitdrukkingen: begrip referentie, castmechanismen
-
Operatoren (: :, nieuw, verwijderen)
-
Functies (parameters en retourwaarden doorgeven door verwijzing, standaardwaarden, inlining, overbelasting)
-
C-code gebruiken in een C++-programma
-
Referenties (argumenten en retourwaarden)
-
Constante types
-
Naamruimten
-
Automatisch" typen met het sleutelwoord auto (C++ 11)
Object-georiënteerde benadering
-
Algemene principes van objectgeoriënteerde technieken
-
C++ en objectgeoriënteerd programmeren
-
Een inleiding tot objectgeoriënteerde methodologieën
-
Een inleiding tot modellen en UML-notatie (statisch model, dynamisch model, samenwerkingsmodel, scenario)
C++ klassen en objecten
-
Syntax: velden, methoden, constructeurs
-
Toegangscontrole
-
Zelfverwijzende
-
Statische velden en methoden
-
Functies
-
Vriendmethoden en -klassen
-
Dynamisch arrays van objecten maken
-
Methodologische aspecten: klassen ontwerpen
-
Constructors kopiëren en verplaatsen (C++11)
-
Delegeren van constructors (C++ 11)
-
Inleiding tot geheugenbeheer (stack, heap, vuilnisman, enz.)
Derivatie en overerving
-
Principe van afleiding
-
Syntaxisaspecten: definitie van afgeleide klassen, constructors
-
Toegangscontrole
-
Implementatie van polymorfisme: virtuele functies
-
Hergebruik van code: abstracte klassen
-
Interfaces
-
Meervoudige afleiding
-
Semantische en methodologische aspecten: codefactorisatie
Uitzonderingen
-
Syntax: try blocks, exception generatie
-
Methodologische aspecten: een uitzonderingshiërarchie opbouwen, uitzonderingen gebruiken
Overloading operatoren
-
Principe van overloaden
-
Binaire operator overloading
-
Specifieke overloading: de index, functie en conversie operatoren
-
Overload van geheugenbeheer-operatoren
-
Overload van '' operatoren
Modellen
-
Klassenmodel. Principes en algemene mechanismen. Modellen overloaden en methoden herdefiniëren
-
Functiemodel. Principes en algemene mechanismen. Model overloaden
-
Modellen en operator overloading
-
Modellen en afleidingsmechanismen
-
C++ 11 verbeteringen
I/O en STL overzicht
-
I/O
-
Het principe van streams en de hiërarchie van I/O-klassen
-
Beschrijving van enkele I/O-klassen
-
Overzicht van de STL
-
Doelstellingen en principes
-
Beschrijvingen van enkele modellen en klassen
-
Containers, iteratoren, intervalgebaseerde lussen (C++ 11)
Ingebed
-
Embedded software en real-time programmeren
-
Hoe programmeren en debuggen op een microcontroller in C++
-
Gebruik van debugging en real-time ontwikkeltools
-
Toegang tot randapparatuur en het schrijven van interrupt routines in C++
-
Inleiding tot real-time besturingssystemen
-
Goede praktijken in embedded C++
Praktische oefeningen
-
Aan de slag met de ontwikkelomgeving en het bouwen van een eenvoudige applicatie
-
Toepassing van OO concepten op een case study
-
Ontwikkeling van de casestudy: ontwerp en bouw van een hiërarchie van klassen en interfaces
-
Implementatie van polymorfisme op de case study
-
Introductie van uitzonderingen op de case study
-
Overladen van eenvoudige operatoren
-
Praktische oefeningen over modellen
-
Ontwikkeling van een ingebedde toepassing