Learning story: Ik wil leren hoe ik het OO-principe inheritance toepas op mijn project #21
Reference in New Issue
Block a user
No description provided.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
1. Inleiding
Object georiënteerd programmeren (OOP) leunt op een aantal pijlers: abstraction, encapsulation, inheritance en polymorfisme. De pijler
inheritance
is onderwerp van deze learning story.Object-oriented programming (OOP) draait erom dat we in programma's proberen om de werkelijkheid te vatten. Wat je vaak ziet is dat, wanneer we proberen om categorieen te maken, dat we daar eindeloos mee door kunnen gaan. Zo heeft de HvA docenten, maar zijn sommige docenten meer gelijk dan anderen. Elke docent staat voor de klas, maar de ene docent heeft zich misschien gespecialiseerd in programmeren, een ander in het opstellen van een business plan, en een derde in het inrichten van infrastructuren. Daardoor heeft elke docent bepaalde basistaken, maar afhankelijk van de specialisatie heeft een individuele docent eigen kenmerken, kennis, of aanvullende taken die hij of zij kan uitvoeren.
De manier om dit principe naar OOP te vertalen noemen we Inheritance (overerving). Inheritance helpt bij het hergebruiken van code en het organiseren van objecten. Met inheritance kunnen we bijvoorbeeld een basis-class(parent)
Voertuig
creëren met algemene eigenschappen, zoals het aantal wielen en de maximale snelheid. Afgeleide classes zoalsAuto
,Vrachtwagen
enMotorfiets
erven deze eigenschappen en voegen specifieke kenmerken toe, zoals het aantal deuren en het laadvermogen. Dit bevordert een efficiënte en gestructureerde code, waarbij we gemeenschappelijke functionaliteit op één plek neerzetten en specifieke functionaliteit toevoegen in subclasses(childs).Inheritance maakt het onderhouden en uitbreiden van de code gemakkelijker, waardoor we flexibele en herbruikbare code kunnen schrijven, zoals in dit voorbeeld het modelleren van auto's en andere voertuigen.
2. Wat moet ik kunnen?
3. Hoe leer ik dit?