Newsgroup: it.comp.java
Titolo: clonazione


rocco....@italdata.it
Uh... Tre cose:
a) non ruffianate ;-) "...aiuto preziosissimo..."
b) non dite "...scriveteci all'indirizzo di mail..."
Il newsgroup mica serve solo a voi! Al limite dite "scriveteci _anche_ 
all'indirizzo di mail xxx perche' (ad esempio) abbiamo problemi a leggere le 
news" Okay? Un po' di netiquette, perbacco! Altrimenti non vi caga nessuno! 
;-) Il NG serve a diffondere le informazioni ed ad aiutarsi reciprocamente, 
mica e' un help desk!
c) usate un titolo che descrive il problema, se possibile.
Ciao & HTH,
      Bruno.
______________________________________________________
Get Your Private, Free Email at 
http://www.hotmail.com
--
Posted from [194.184.102.174] by way of 
f130.hotmail.com
 [207.82.251.9]
via Mailgate.ORG Server - 
http://www.mailgate.org

 /NOTA]
E bravo Bruno! Innanzitutto grazie per il >preziosissimo< :) riferimento
al libro, che mi andrò a leggere al più presto. In secundis (scusate il
mio latino, è un po' arrugginito), io ho affrontato un problema del
genere, e volevo raccontarti un po' come ho fatto.
Sto sviluppando una serie di classi per l'incapsulazione del linguaggio
WML. Ora, la maggior parte dei miei costruttori lancia una WMLException
in caso di 'codice' WML non valido. Per comodità mia e per un riutilizzo
degli oggetti ho scelto di poter creare una copia di un oggetto in
qualsiasi momento. Se qualcuno di voi conosce il WML, saprà che in una
certa Card ci possono essere dei gruppi di oggetti contenenti altri
gruppi e/o oggetti ecc ecc. Mi sono detto, 'per comodità potrei
clonarmeli, cambiare gli attributi che mi servono e riutilizzarli'
(ovviamente non avrebbe senso infilare un riferimento all'oggetto, ad
esempio una variabile, che si troverebbe ad avere lo stesso valore
dappertutto!). Questo però porta al non poter utilizzare clone().
Perché? Perché a) clone() non lancia una WMLException e b) clone() non
fa appunto una 'deep copy'. Mi sono ritrovato quindi ad avere tutta una
serie di oggetti che dispongono del proprio metodo 'copy' che ricrea una
copia 'profonda' dell'oggetto stesso. Per creare una copia di A, che
contiene B, chiamo a.copy() che a sua volta richiama B.copy(), e così
via ricorsivamente fino alla completa clonazione dell'oggetto. Il tutto
funziona perchè le classi sono proprietarie e non estendono Canvas o
qualcosa del genere.
Giusto per amor di discussione, come avreste fatto voi?
Ciao,
	Stefano

 Giusto per amor di discussione, come avreste fatto voi?
Mah, se non avessi saputo della deep copy avrei fatto senz'altro anche
io cosi! E anzi, l'ho fatto in piu' di un caso ;-)
Ciao,
      Bruno.
Sent via Deja.com 
http://www.deja.com/
Share what you know. Learn what you don't.

 
GOF e altri libri? Mi faresti vedere la luce anche a me, potresti darmi
i titoli? :)
Ciao,
	Stefano

In article <37E600AC...@local.domain>,

- il GOF e' "Design Pattern - Elements of Reusable Object-Oriented
Software" di Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides
edito da Addison-Wesley ed e' chiamato cosi' poiche' GOF e' l'acronimo
di "Gang Of Four", i quatto autori! E' praticamente una "bibbia" per
quanto riguarda i pattern.
- ho letto quel libro on-line di cui ho mandato il link su questo thread
- ho letto un po' di materiale in giro su Internet a questi indirizzi:
http://www.cetus-links.org/oo_patterns.html
http://www.objectnews.com/
- sto per iniziare il libro "Patterns in Java Vol.1" di Mark Grand
ediz. John Wiley & Sons e un mio amico mi ha anche consigliato
"Applying Uml and Patterns : An Introduction to Object-Oriented
Analysis and Design" di Craig Larman ediz. Prentice Hall
Comunque di materiale ce ne e' un sacco! Forse piu' interessante di
tutto sono i libri on-line (gli altri anche a comprarli da Amazon
costano un occhio!), dei quali pero' ne esistono veramente pochi! Chi
ne vede qualcuno, lo segnali, please!!!


      Bruno.
Se non erro c'era qualcuno qualche tempo fa che aveva iniziato un sito e una 
mailing list sui patterns. Purtroppo non ricordo i dettagli, ma in dejanews 
magari trovate.
-- 
God is Real, unless declared Integer.
ObjectZone - 
http://space.tin.it/computer/csadun/

 wrote in message 7s7bjb$r1i$1...@nnrp1.deja.com...
