[Php-it] Estendere una classe o incorporare un oggetto?

Domenico L. domenico.lorusso at pleiade.it
Wed Feb 7 17:30:22 CET 2007


Andrea Colanicchia ha scritto:
>
> Non so di preciso come fare questa cosa, ma penso che si possa fare...
Ci ho pensato anche io e saprei anche come farlo, ma diventa veramente 
allucinante la gestione, perché ogni metodo dovrebbe fare dei controlli 
che non mi sembra una cosa sensata
> B dovrebbe essere il controller?
Uhm il controller è C appunto... anche se controlla ben poco....
sia F che B necessiterebbero di accedere ai dati grezzi, ho fatto in 
modo che passino dai metodi di vm, ora metterci in mezzo anche il 
controller è impensabile, anche perché per capirci:
L'attributo label di una variabile ha senso e deve essere gestito da F
Mentre l'attributo outValuate è gestito direttamente da C

B nel 1° caso semplice deve solo leggere 3 proprietà pubbliche di vm.

Una futura estensione di B invece necessiterà di gestire le proprietà 
alias, parent, childs, empty, occorrenze


> VM è il model giusto?
>
> Beh il model deve esporre i propri metodi e proprietà, non è sbagliato.
sì però diciamo che alcuni metodi sono "pericolosi" e vorrei che 
l'utilizzatore di questa classe non vi avesse accesso.

>
>> Volendo potrei fare in modo che F, C e B condividano con VM l'attributo
>> teta di cui sopra, ma per ora cerco di evitarlo :-)
>
> Cioè? Condividere in che senso?

è un po' contorto ma se mentre B si "registra" su VM, VM può memorizzare 
che B è registrato e richiamare un metodo di B cui passa per riferimento 
il famoso attributo teta

In questo modo tutti gli oggetti avrebbero accesso in modalità diretta 
ai dati, e VM potrebbe limitarsi ad implementare metodi sicuri, di 
pubblico accesso.

-- 
Domenico L.                             icq: 645 44 861

per stupire mezz'ora basta un libro di storia,
io cercai di imparare la Treccani a memoria... [F.d.A.]



More information about the Php-it mailing list