PDA

View Full Version : [OOP] Con quale libro comincio?


magix2003
26-02-2008, 21:04
Ciao a tutti,

voglio leggermi queste due bibbie:

Design patterns elements of reusable object-oriented software
Refactoring improving the design of existing code



Con quale inizio?:cool:

leonapster
26-02-2008, 21:08
con il primo

mindwings
27-02-2008, 10:19
Ciao a tutti,

voglio leggermi queste due bibbie:

Design patterns elements of reusable object-oriented software
Refactoring improving the design of existing code



Con quale inizio?:cool:


Prima di passare ai patterns ti consiglio questo : "Object Oriented Analysis and Design"
http://www.amazon.com/Object-Oriented-Analysis-Applications-Benjamin-Engineering/dp/0805353402
oppure questo : "Object Oriented Software Construction"
http://www.amazon.com/Object-Oriented-Analysis-Applications-Benjamin-Engineering/dp/0805353402

I patterns sono delle soluzioni ad hoc a determinati problemi
prima di studiarli imho è necessaria una buona conoscenza dell'OOP
per comprenderne appieno il significato. Ho letto quasi completamente il libro di grady booch e devo dirti che non è male;)

Se poi vuoi iniziare subito dai patterns imho potresti utilizzare
questo : http://www.amazon.com/Head-First-Design-Patterns/dp/0596007124

EDIT: Indipendentemente dal libro che scegli cerca di sviluppare un senso critico su ciò che studi/leggi
e fatti un' idea personale su tutto :)

mindwings
27-02-2008, 10:29
"Some of the steps in becoming a good OOP programmer/architect are listed below (1 & 2 are often combined):

1. learn an OO language
2. learn OOP
3. learn how to *use* OOP

Step three is where this book and, for example, books on object-oriented design patterns (GoF) come in. Just because because you know what classes and inheritance are does not mean you will use them effectively."

mad_hhatter
27-02-2008, 11:17
"Some of the steps in becoming a good OOP programmer/architect are listed below (1 & 2 are often combined):

1. learn an OO language
2. learn OOP
3. learn how to *use* OOP

Step three is where this book and, for example, books on object-oriented design patterns (GoF) come in. Just because because you know what classes and inheritance are does not mean you will use them effectively."

io per i pattern e OOP ho letto questo:
http://www.amazon.com/Design-Patterns-Explained-Perspective-Object-Oriented/dp/0321247140/ref=sr_1_4?ie=UTF8&s=books&qid=1204107154&sr=1-4

e devo dire di essermi trovato benissimo: ha cambiato il mio modo di approcciare l'OOP. Parla di pattern, ma parla anche e soprattutto di design object-oriented. Insegna il design by interfaces, pone l'accento sull'information hiding e sul polimorfismo per venire incontro alla variabilità del dominio di un problema di modellazione, critica il fatto che si ponga troppa enfasi sull'ereditarietà e sul riuso del codice, ecc... veramente ottimo secondo me

magix2003
27-02-2008, 15:46
io per i pattern e OOP ho letto questo:
http://www.amazon.com/Design-Patterns-Explained-Perspective-Object-Oriented/dp/0321247140/ref=sr_1_4?ie=UTF8&s=books&qid=1204107154&sr=1-4

e devo dire di essermi trovato benissimo: ha cambiato il mio modo di approcciare l'OOP. Parla di pattern, ma parla anche e soprattutto di design object-oriented. Insegna il design by interfaces, pone l'accento sull'information hiding e sul polimorfismo per venire incontro alla variabilità del dominio di un problema di modellazione, critica il fatto che si ponga troppa enfasi sull'ereditarietà e sul riuso del codice, ecc... veramente ottimo secondo me

Ho visto che il libro che volevo leggere io sui design patterns si basa su codice C++, che per me è abbastanza arabo, quello che mi consigli tu è in Java? E' molto complesso?

mad_hhatter
27-02-2008, 19:01
Ho visto che il libro che volevo leggere io sui design patterns si basa su codice C++, che per me è abbastanza arabo, quello che mi consigli tu è in Java? E' molto complesso?

gli esempi sono in Java (neanch'io conosco il C++) con qualche commento per chi conosce il C++ per evidenziare differenze o problemi nell'implementare un pattern in un dato linguaggio.

Tieni però presente che gli esempi di codice sono talmente focalizzati sul pattern che è quasi impossibile non comprenderli: si usano costrutti talmente di alto livello che basta veramente una conoscenza minima per seguire gli stralci di codice. L'unico pattern la cui implementazione risulta un pelino complessa è il Singleton, ma personalmente ritengo che l'importanza e il valore di questo libro non stia nell'implementazione dei pattern, ma nei concetti di design object-oriented esposti in maniera egregia.