![]() |
Re: Modell meines Infoprojekts in OOP
Zitat:
|
Re: Modell meines Infoprojekts in OOP
Fangs doch anderst an:
TNukleon -> TProton / TNeutron / TElektron -> TMolekül.... Wenn du das fertig hast bis zum Menschen, ( und das alles in OpenGL darstellst, ) gehst in die Geschichte ein! :mrgreen: |
Re: Modell meines Infoprojekts in OOP
[ignore Speedmaster] :wink:
Warum keine Property "Fahrer"? IMO sollte man von "außen" keine "Get..."/"Set..."-Methoden sehen können. [/ignore Speedmaster] [edit] Jedes Auto ist eine Fabrik :wink: ? |
Re: Modell meines Infoprojekts in OOP
Zitat:
Delphi-Quellcode:
Und schon hast du deinen Zugriff. So sollte man es uebrigens fuer alle Member machen, auf die man von aussen zugreifen muss ;)
type TAuto = class(TObject)
private fFahrer: TFahrer; published property Fahrer read fFahrer write fFahrer; end; @Speedmaster: Wenn du etwas sinnvolles beitragen kannst, spricht nichts dagegen. Tipps wie deiner helfen aber nicht wirklich :roll: Greetz alcaeus |
Re: Modell meines Infoprojekts in OOP
Mit propertys hab ich noch nie gearbeitet. Was es nich so alles gibt?! Das schau ich mir erst nochmal an.
Bis jetzt, hol ich mir die Information über Funktionsaufrufe (sollte auch in OOP legal sein):
Delphi-Quellcode:
Soll genug sein für heute :pale: :mrgreen:
Auto.getFahrer.getfKlasse;
mfg devnull |
Re: Modell meines Infoprojekts in OOP
Also mit Properties zu arbeiten ist nicht besonders schwer und es ist verdammt praktisch. Dadurch kannst du vor allem bewirken, daß nur gültige Daten angegeben werden. Du könntest also zB beim Erzeugen des Fahrers prüfen, ob es die angegebene Führerscheinklasse überhaupt gibt, usw.
|
Re: Modell meines Infoprojekts in OOP
Das mit dem TMann/TFrau ist ja wohl geklärt durch TMensch. Du hast doch nach Polymorphie/Vererbung gefragt. Und was hat das Auto mit der Fabrik gemeinsam ? Nichts ! Du willst wohl lediglich darauf hinaus, daß die Fabrik mehrere hat. Bei dem Thema geht es aber darum, welche Dinge sich wiederverwenden lassen, wegen gemeinsamer Eigenschaften. Das ist OOP ! Was nützt also jetzt der Fabrik eine Eigenschaft "Viertürer", die sie von TAuto erbt ? :shock: Für das Auto ist das eventuell aber schon wichtig. Die Fabrik hat also mit dem Auto genauso wenig zu tun, wie dieses mit dem Fahrer. Siehe die Schuhgröße. Die ist ja jetzt tatsächlich in Deinem Diagramm drin. Und die habe ich nur deshalb gewählt, weil sie bei dem Auto völlig überflüssig wäre.
Du mußt das Prinzip der Vererbung usw. nochmals komplett überdenken. Und zwar in der Richtung, was jetzt wo gebraucht wird. Dein Beispiel ist auch nicht so gut geeignet, das alles zu erklären. Weil man kaum eine Hierarchie darstellen kann. So könnte die aussehen :
Delphi-Quellcode:
Bei den 3 Basisklassen sehe ich kaum verwertbare Sachen für OOP. Du schleppst eher mehr Ballast mit rum.
TKonzern -> TFabrik (erbt vom Konzern alles, hat aber zusätzlich eigenen Standort)
TFahrzeug -> TAuto (4 Räder) -> TPkw -> TKombi (zusätzlich Kofferraumvol.) -> TLkw (x Achsen) TMensch (egal, ob Führerschein usw.) -> TFahrer Edit : zu früh abgeschickt. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:45 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz