phpbar.de logo

Mailinglisten-Archive

[php] &$objekt == *RECURSION*

[php] &$objekt == *RECURSION*

Konstantin Rekk k.rekk at intermatix.de
Mon Apr 19 21:22:51 CEST 2004


On Monday 19 April 2004 19:53, patrick m�ller (aka elias) wrote:
> hi liste!
>
> Mal wieder eine OO Frage.
> Ich habe zwei Objekte, eines was nur Daten (DATA)
> (zu Bildern) enth�lt und ein anderes (DO) welches
> diese Daten verarbeiten kann. Damit ich aus DATA
> auf die Methoden von DO zugreifen kann lege ich
> es in letzterem per Referenz ab. Im nachhinein
> denke ich aber das das etwas bl�d ist, weil zum
> beispiel bei einem var_dump(DATA) an bestimmter
> stelle ein *RECUSION* ausgespuckt wird und ich
> gehe mal nicht davon aus dass das so fein ist.
> Ausserdem muss ich ja bei vielen DATA Objekten
> eine Menge referenzen erstellen.
>
> Jetzt �berlege ich ob ich die ganze Struktur
> wieder �ber den haufen werfe und ein par
> 'usability' einbu�en mache oder ob es eine
> Strategie gibt die dieses Verfahren vereinfacht
> bzw. optimiert?
>
> Hat jemand eine Idee?

Dein Ansatz entspricht meiner Kenntnis nach nicht ganz dem OO-Ansatz,
Daten und Methoden zusammenzufassen und den Zugriff auf Daten zu kapseln,
in diesem Fall Bild ist eigenes Objekt mit eigenen Methoden, die Sichten oder 
Schnittstellen f�r Zugriff von au�en definieren, Service-Funktionen werden 
als static implementiert!

Dar�berhinaus bieten sich viele M�glichkeiten in Abh�ngigkeit vom
konkreten Problem, gemeinsam ist der obere Ansatz.
wichtigste:
a) DATA wird erweitert um Funktionalit�ten von DO, wird quasi DO 
b) DO Basisklasse mit Bilddaten als Membervariable und Basisfunktionen
(DATA ist in DO).
c) DO kennt Bilddaten (referenz), hier aber nicht zu empfehlen, wegen dem 
oberen, dies nur geeignet wenn DATA eine eigene Funktionalit�t besitzt, und
nicht nur �ber DO verarbeitet wird.
d) ....

Hier k�nnte sich auch
das Factory, oder auch Strategy-Pattern anbieten, wenn du den 
Verarbeitungsmodus zur Laufzeit bestimmen willst.

Gru�.


-- 
Konstantin Rekk
Berlin
phone: +49 (0) 30 48623452
mobil: 0176 2100 6000
www.rekk.de
www.tanden-aikido.de


php::bar PHP Wiki   -   Listenarchive