DELPHI: Objekgeoriënteerde Programmering (OOP)


Sien ook Pieter Blignaut se notas omtrent OOP in Delphi

(Dit is met sy toestemming op hierdie webwerf geplaas)

1. Definisie
Objekgeoriënteerde Programmering (OOP) gebruik objekte (onafhanklike modules) om probleme op te los.


2. Objekte
- 'n Objek is 'n module wat deur die programmeerder geskep is.
- 'n Objek vertoonwoordig iets wat regtig bestaan.
- Objekte reageer op aksies (gebeurtenisse).
- Objekte word in klasse gegroepeer.
- Objekte het lede: eienskappe (properties) en metodes (methods).
- 'n Eienskap beskryf die objek terwyl 'n metode iets is wat met die objek gedoen kan word.

Objek - Eienskap (of toestand) / Metode (Doen iets: funksie & prosedure)


Alle Delphi komponente is objekte (tog is alle objekte nie komponente nie).

Byvoorbeeld:
'n Knoppie het 'n eienskap ‘caption’ – die teks wat op die knoppie vertoon word.
Die metode ‘clear’ maak die inhoud van 'n Edit-kassie skoon.

As jy regsklik op 'n Knoppie en 'View as Text' kies, sal die volgende eienskappe vertoon word:

Hieruit is dit ook duidelik dat die Form ook 'n objek is.

3. Klasse
-
Objekte kan in klasse gegroepeer word.
- Klasse word gebruik om een soort objek van 'n ander te onderskei.
- 'n Klas is 'n groep objekte wat dieselfde eienskappe en gedrag het.
- 'n Objek word 'n instansie (instance) van 'n klas genoem.
- Dit kan beskryf word as 'n patroon of 'n templaat wat gebruik word objekte te skep.

Elke soort komponent (Form, Button, Edit, Memo, ens.) het 'n klastipe wat in Delphi gedefinieer is. Dit beskryf die eienskappe en metodes daarvan.

'n Delphi-komponent kan aan 'n klas behoort. As iets op die Form geplaas word, word die komponponente geskep volgens die definisie van die bepaalde klas. Delphi voeg outomaties die verklaring by nadat 'n komponent op die Form geplaas is.

'n Klas sluit in:
- 'n stel eienskappe en gedrag
- wat die werking en konstruksie van 'n werklike objek beskryf.

'n Klas bestaan uit:
- velde (veranderlike wat deel is van 'n objek)
- eienskappe (data wat 'n objek beskryf)
- metodes (wat 'n objek kan doen)

Wanneer 'n objek geskep word na aanleiding van 'n klas, word daar gesê dat die objek geïnstansieer is. Die rede hiervoor is dat 'n objek bekend staan as 'n instansie van 'n klas.

Met die naamgewing van klasse word die letter T altyd vooraan geplaas. Byvoorbeeld: TForm, TButton, TMotors and TBoeke.

4. Basiese OOP-eienskappe
4.1 Data-abstraksie
Skep van eie datatipes in Delphi. Bestaande datatipes word saamgegroepeer om 'n nuwe datatipe, wat nie in Delphi bestaan nie, te skep.

4.2 Enkapsulasie
'n Objek is 'n afsonderlike entiteit met sy eie data en gedrag. Die data en gedrag 'behoort' aan die objek en ander objekte het nie noodwendig toegang daartoe nie.

4.3 Oorerwing
Objekte laer af in die hiërargie erf data en gedrag van hul voorsate (ancestors) hoër op in die hiërargie.



Voertuig: motor, vragmotor en bus / Hiërargie van 'n BitButton
 

4.4 Polimorfisme
'n Objek kan afwisselend handel met 'n voorsaat in verband met die eienskappe en die metodes wat dit van die voorsaat erf.


Toepassing en meer inligting

5. Skep en gebruik van klasse

6. Voorbeeld van klas


Bronne gebruik
- Object Oriented Programming in Delphi - A Guide for Beginners
http://www.webtechcorp.co.uk/web-developer-training-delphi-article-oop.htm
- Object Oriented Programming in Delphi. Pieter Blignaut (Jan. 2008)
- Enjoy Delphi. Part 2. A. Bezuidenhout, K. Gibson, C. Noomè, U. Wassermann, M. Zeeman (S. Jacobs, ed.) (2005) - p. 207-252
- Creative Programming in Delphi. Part 2. M. Havenga & C. Moraal. (2007) - p. 135-156
- Introducing Delphi Programming: Theory through practice. J. Barrow, L. Miller, K. Malan & H. Gelderblom. (2005) – p. 486-520

Terug na Delphi-hulpbronindeks




Terug na Tuisblad

© JAK Olivier (2008)

Webwerf: http://www.jako.nom.za/
E-pos: olivier@teachitza.com