- Leren door doen
- Trainers met praktijkervaring
- Klassikale trainingen
- Gedetailleerd cursusmateriaal
- Duidelijke inhoudsbeschrijving
- Maatwerk inhoud mogelijk
- Trainingen die doorgaan
- Kleine groepen
In de cursus Object Georiënteerd Programmeren van SpiralTrain leren de deelnemers programmeren in een object georiënteerde taal zoals Java, C# of Python. De deelnemers kunnen zelf kiezen welke taal ze in de cursus willen gebruiken. Object Oriëntatie heeft zich bewezen als een vruchtbaar programmeer paradigma. De meeste moderne programmeer talen zijn tegenwoordig object georiënteerd en aan wat oudere talen zoals C of PHP is in de loop der tijd Object Oriëntatie toegevoegd.
De cursus Object Georiënteerd Programmeren begint met een overzicht van hoe dit paradigma is voortgekomen uit andere softwareontwikkelingsmethoden zoals structured en procedural programmeren. Het begrijpen van deze evolutionaire stap is essentieel voor moderne softwareontwikkeling.
Een belangrijk voordeel van de cursus Object Georiënteerd Programmeren is dat domeinconcepten direct in de software zijn terug te vinden. We leggen uit hoe het verlagen van de Semantic Gap de code begrijpelijker en beter onderhoudbaar maakt. Dit principe zorgt ervoor dat ontwikkelaars sneller en efficiënter kunnen werken met de applicaties die ze bouwen.
Vervolgens behandelen we de concepten van Classes en Objects, evenals Fields en Methods, Getters en Setters, Constructors en Destructors. Hoewel deze concepten consistent zijn in alle Object Georiënteerde talen, besteden we ook aandacht aan de kleine maar belangrijke verschillen op detailniveau. Dit helpt deelnemers om een diepgaand begrip te ontwikkelen van hoe deze elementen samenwerken in verschillende programmeertalen.
Een ander belangrijk onderwerp in de cursus is Encapsulation. Dit begrip houdt in dat de interne data van classes wordt afgeschermd van de buitenwereld. Hierdoor kunnen wijzigingen in de implementatie worden doorgevoerd zonder dat aanpassingen in de aanroepende code nodig zijn, wat de onderhoudbaarheid van software aanzienlijk verbetert.
De begrippen Inheritance en Polymorfisme worden eveneens behandeld in de cursus Object Georiënteerd Programmeren. Door middel van Inheritance kunnen afgeleide classes de code uit de base class hergebruiken, waardoor duplicate code wordt vermeden. Polymorfisme stelt ontwikkelaars in staat base class methods een andere betekenis te geven in afgeleide classes. Dankzij dynamic binding kan de runtime omgeving deze methods automatisch vinden.
Tenslotte besteden we aandacht aan Design Patterns binnen Object Georiënteerd Programmeren. Deze patronen bieden standaardoplossingen voor veelvoorkomende problemen en helpen ontwikkelaars bij het optimaliseren van hun code. Voor meer gedetailleerde informatie over de principes en toepassingen van Design Patterns, kunt u de uitgebreide documentatie bekijken op Refactoring Guru.
Voor meer programmeren cursussen, zoals Java Programmeren, kunt u ook onze andere aanbiedingen bekijken.
De cursus Object Georiënteerd Programmeren is bedoeld een ieder die object georiënteerd wil leren programmeren met classes en objects.
Om aan deze cursus te kunnen deelnemen is ervaring met programmeren in een procedurele programmeer taal vereist.
De theorie wordt behandeld op basis van presentatie slides. De theorie wordt verduidelijkt door middel van demo's. Na bespreking van een module is er de mogelijkheid te oefenen. De cursustijden zijn van 9.30 tot 16.30.
De deelnemers krijgen na het goed doorlopen van de cursus een officieel certificaat Object Georiënteerd Programmeren.
Module 1 : Intro Object Orientation |
Module 2 : Classes and Objects |
Module 3 : Encapsulation |
|
OO Origins Abstraction Levels Domain Analysis Unstructured Programming Procedural Programming Object Oriented Programming OO Benefits Reusability Lowering Semantic Gap Higher Abstraction Objects as Domain Concepts Objects as Program Concepts |
Classes are Types Objects are Instances Fields Methods Creating Objects Object Initialization Constructors Using Objects Getters and Setters Destructors Current Object this or self |
Encapsulation Benefits Information Hiding Access Specifiers private and public Implementation Changes Validity Checks Ensuring Data Validity Class Variables static Data Class Methods static Methods static Initializers |
Module 4 : Inheritance |
Module 5 : Polymorphism |
Module 6 : Design Patterns |
|
Deriving Classes Class Hierarchies Hiding Instance Variables Overriding Methods Overloading Methods Constructor Chaining Accessing Base Class protected Members super or base Multiple Inheritance |
Call Overridden Functions Virtual Functions Role of v-table Polymorphism Benefits Abstract Classes Incomplete Base Classes Concrete Classes Interfaces Interface Implementation Dynamic Binding |
What are Design Patterns? Common Problems Pattern Solutions Singleton Pattern private Constructors Creation Functions Adapter Pattern Adapting an Interface Observer Pattern Publish and Subscribe |