Fundsachenverwaltung Version 1.2

Informatik Johann Penon

Klasse TFinder und TPerson einbinden

Klassendiagramm FundsachenverwaltungIn dieser Version kann ein Fundstück mit allen Attributen, also auch endlich auch mit den Angaben zur Finderin bzw. zum Finder, eingegeben und mit dem Suchen-Button angezeigt werden.

Typisch für OOP ist die Bottom Up - Vorgehensweise, bei der man von unten in der Klassenhierarchie mit der Implementation anfängt, um dann ein fertiges Modul beim nächsten verwenden zu können. Danach hätte sich die Reihenfolge: PERSON - FINDER - FUNDSACHE - FENSTER ergeben. Das hat jedoch den Nachteil, dass erst verhältnismäßig spät etwas Funktionierendes vorliegt.

Ebenso typisch für OOP ist das Zusammenbauen von neuen Applikationen aus schon fertigen Klassen (Konfigurieren), die in einer Bibliothek gesammelt sind. Hier kann vorteilhaft die Klasse PERSON, die von einem früheren Kurs erstellt wurde, benutzt werden. Das spart viel Zeit.

Die Klasse TFinder implementieren und die Vererbungsbeziehung zu TPerson herstellen.

Erzeugen Sie zunächst eine neue Klasse TFinder nach dem selben Vorgehen mit dem Sie TFundsache erstellt haben. Danach vervollständigen Sie bitte diese Klasse indem Sie folgende Schritte ausführen.

  1. uses uPerson;
  2. Vererbungsbeziehung einbauen: TFinder = class (TPerson)
  3. In Init die gleichnamige Methode aus der Oberklasse mit dem Zusatz inherited hinzufügen, weil das geerbte Objekt ebenfalls initialisiert werden muss. (Vgl. Patient)
    procedure TFinder.Init; 
    (* -------------------------------------------------------------------- *)
    begin 
      inherited Init; 
      Klasse := '';
    end;
    				
  4. Fügen Sie das Attribut Klasse (für die Schulklasse des Finders) mit den Methoden setKlasse und getKlasse hinzu.


Die Aggregation FENSTER - FUNDSACHE implementieren

Ergänzen Sie die Klasse uFundsache:

  1. uses ..., uFinder
  2. Neues Attribut: Finder : TFinder; über private einfügen
  3. in Create hinzufügen: Finder := TFinder.Create; // Finder ist ein Exemplar (!), muss erzeugt werden
  4. in Init hinzufügen : Finder.Init;

Ergänzen Sie die Klasse uFenster:

  1. Bei DatenAktualisieren die fehlenden Set-Methoden (außer Geschlecht) nach folgendem Muster eintragen:
    Fund.Finder.SetName (FinderNameEdt.Text);
  2. Bei MaskeAktualisieren die fehlenden Get-Methoden (außer Geschlecht) nach folgendem Muster eintragen:
    FinderNameEdt.Text := Fund.Finder.GetName ;
  3. Fügen Sie die Setmethode bei DatenAktualisieren für Geschlecht ein:
    case FinderGeschlechtRdGrp.ItemIndex of
        0 : Fund.Finder.SetGeschlecht('w');
        1 : Fund.Finder.SetGeschlecht('m');
    end;
    
  4. Fügen Sie die GetMethode bei MaskeAktualiseren für Geschlecht ein:
    case Fund.Finder.GetGeschlecht of
       'w' : FinderGeschlechtRdGrp.ItemIndex := 0;
       'm' : FinderGeschlechtRdGrp.ItemIndex := 1;
    end;
    

Jetzt sollte genau eine Fundsache nach dem Klicken auf die Ok-Taste gespeichert und über die Suchen-Taste wieder ausgegeben werden.

zum Seitenanfang springen

zum Seitenanfang springen