Newsgroup: it.comp.java
Titolo: Quesito sull'OO

Salve a tutti,
vorrei porvi una domanda che riguarda in generale l'Object Oriented.
Se doveste realizzare in un'applicazione un'agenda nella quale vengono
registrati, tra l'altro, indirizzi di persone, inserireste il metodo
AggiungiIndirizzo() in un'ipotetica classe Persona oppure in una classe
Agenda?
Personalmente, opto per la seconda possibilità, in quanto le classi dell'OO
dovrebbero rappresentare gli oggetti del mondo reale con i loro attributi e
comportamenti, e ritengo che il comportamento sopra sia un servizio, un
metodo, proprio dell'Agenda, non di ogni singola persona che vi viene
registrata sopra (come se ognuno si registrasse nell'agenda di un tizio "x"
di persona!).
Grazie,
Un saluto,
Sergio B.

 ha scritto nel messaggio
news:hi0Ha.93253$pR3.1...@news1.tin.it...


 ha scritto nel messaggio
news:hi0Ha.93253$pR3.1...@news1.tin.it...

Concordo con te. aggiungere l'indirizzo è un'azione che coinvolge più
l'agenda che la persona.....


In generale no :-), OO non e' un mezzo per modellare la realtà, è un metodo per gestire la
complessita'. In OO e' sempre necessario identificare (o meglio arrivare) alle astrazioni
corrette, ma fare questo (in)seguendo sistematicamente una similitudine con la realtà non
sempre porta a risultati corretti. Ci sono moltissime metafore da usare: modellare gli
oggetti seguendo il mondo reale e' solo una di queste.
Ciao,
   Bruno
-- 
| Bruno Bossola 
| A Java Software Engineer :-)
| 
http://digilander.iol.it/bbossola
| Membro del JUG Torino - 
http://www.jugtorino.it

Prima di tutto grazie a tutti per l'interesse :-)


E' vero, ma preferisco, come primo approccio, rifarmi sempre alla realtà!
Attendo la tua contro-risposta!
Ciao!
Sergio B.


Ci va di culo che oggi e' Lunedi, e' un giorno un po' sgonfio: normalmente non ho proprio
tempo... comunque grazie per la discussione (almeno finche' ho tempo di starci dietro :-D)
Ciao,
    Bruno.



Anche io ho davvero poco tempo, infatti i miei post sono alquanto rari.
Comunque...grazie a te!!!
Attendo tua risposta, sperando che tu ne abbia la possibilità :-)
Sergio B.


E' molto di piu', ti guida nella realizzazione del tuo sistema. Fatti guidare bene avrai
un buon sistema, fatti guidare male e ne avrai uno peggiore. Poi, concordo, non farti
guidare e avfai una schifezza :-)



Seguirň i consigli :-)
Grazie di tutto, se hai qualcos'altro da aggiungere č assolutamente
benvenuto.
Un saluto,
Sergio B.

>>
Io mi sono limitato a esprimerlo nel codice. Se hai cambiato idea, comunque, meglio cosi,
se la pensavi cosi' anche prima ma ora ce l'hai piu' chiaro, ancora meglio!



Hai ragione, quanto scritto lasciava intendere proprio la tua traduzione in
codice, mi ero espresso male!
Grazie mille per l'interessante discussione,
Alla prossima,
Un saluto,
Sergio B.

Ivan ha scritto:


Concordo con il fatto che il metodo aggiungiIndirizzo() deve essere un
metodo della classe Agenda in quanto l'azione di aggiunta dell'indirizzo
va ad impattare sull'agenda come è logico pensare. In caso la classe
Persona può essere un oggetto da aggiungere alla classe Agenda con il
metodo aggiungiContatto(). In questo modo se ti serve avere tutte le
informazioni relative di una persona nell'Agenda richiami la persona
(Classe) che le contiene.
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it