1 / 16

OO Analyse in de praktijk

OO Analyse in de praktijk. IV OO basisregels. Boeken/tutorials:. Object Oriented Software Construction, Bertrand Meyer. Waarom regels ?. Consistentie Als iedereen dezelfde regels gebruikt, dan zullen de verschillende onderdelen goed samenwerken.

chaney
Download Presentation

OO Analyse in de praktijk

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. OO Analysein de praktijk IV OO basisregels

  2. Boeken/tutorials: • Object Oriented Software Construction, Bertrand Meyer OO Analyse, IV OO basisprincipes

  3. Waarom regels ? • Consistentie • Als iedereen dezelfde regels gebruikt, • dan zullen de verschillende onderdelen goed samenwerken. • dan begijpt elk teamlid de code/het design van een ander beter • Minder manieren om eenzelfde probleem op te lossen • Minder tijdverlies bij het tobben over welke oplossing het beste is. OO Analyse, IV OO basisprincipes

  4. Waarom regels ? (vervolg) • Betere Code: • = Makkelijker/goedkoper/sneller te wijzigen systemen, … Opmerking hierover: Het belangrijkste blijft het respect voor het project, de code, de methode, enz. OO Analyse, IV OO basisprincipes

  5. Verschil object-klasse • Een object is één instantie van een klasse. • Een klasse beschrijft algemeenheden over zijn objecten. • Voorbeeld : Als Antwerpen een object is, dan zou Stad zijn klasse kunnen zijn. OO Analyse, IV OO basisprincipes

  6. Verschil object-klasse • Oefening Vul de ontbrekende cellen in: OO Analyse, IV OO basisprincipes

  7. Complete klasse • Een klasse bevat i.h.a. zowel attributen als niet triviale methoden. • Waarom: attributen en methoden van een klasse wijzigen vaak samen en horen dus samen. • Voorbeeld : Bankrekening -stand: double +haalAf(bedrag: double) +schrijfOver(bedrag: double, naar: Bankrekening) +double getStand() +setStand(stand: double) OO Analyse, IV OO basisprincipes

  8. Complete klasse • Oefening Wat is er eigenaardig bij dit voorbeeld: Verrichtingen BankRekening -stand +haalAf(van :BR, bedrag) +getStand() +schrijfOver(bedrag, van: BR, naar: BR) +setStand(stand) OO Analyse, IV OO basisprincipes

  9. Veranderlijke eigenschappen • Een veranderlijke eigenschap wordt voorgesteld door een attribuut. • Een onveranderlijke eigenschap kan leiden tot een extra subklasse als het aantal waarden beperkt is. • Waarom? • attributen zijn wijzigbaar maar een object kan niet van klasse veranderen • Vb: Persoon Persoon -burgStaat +getBurgStaat() … Gehuwde Alleenstaande OO Analyse, IV OO basisprincipes

  10. Veranderlijke eigenschappen • Oefening 1 Stel we willen modelleren dat sommige vogels tot een soort behoren die kan zwemmen, en andere niet. Is dit goed ? Vogel -kanZwemmen: bool … +fladder() … OO Analyse, IV OO basisprincipes

  11. Veranderlijke eigenschappen • Oefening 2 Is dit goed ? Persoon -gebDatum … +getLeeftijd() +trouwMet(Persoon partner) … OO Analyse, IV OO basisprincipes

  12. Gemeenschappelijke code • Gemeenschappelijke code binnen een klasse moet ondergebracht worden in een aparte methode die dan meermaals wordt opgeroepen. • Waarom ? • Wijzigingen moeten dan nog maar op 1 plaats gebeuren. -> vermijden van bugs. • Voorbeeld: zie volgende slide OO Analyse, IV OO basisprincipes

  13. Gemeenschappelijke code • Voorbeeld OO Analyse, IV OO basisprincipes

  14. Gemeenschappelijke code • Oefening: Verbeter de code: OO Analyse, IV OO basisprincipes

  15. Command-Query • 1. Een methode die een resultaat teruggeeft, mag NIETS wijzigen. (query) • 2. Een methode die iets wijzigt, mag GEEN resultaat teruggeven. (command) • Waarom ? • Alg.: Een methode moet 1 duidelijk omlijnde opdracht hebben. • Je verwacht niet dat een query iets wijzigt (side effect). • Voorbeeld. Volgende slide. OO Analyse, IV OO basisprincipes

  16. Command-Query OO Analyse, IV OO basisprincipes

More Related