Domanda

Sono alla ricerca di essere un buon sviluppo OO. Oo mi incuriosisce, perché capisco gli schemi, so perché la composizione ti dà più flessibilità che eredità e più di tale saggezza. Tuttavia, sono giunto alla conclusione che so come implementare una fabbrica di un singleton, Ma che non so come inventare un design OO robusto.

Ho un sacco di libri

  1. Modelli di design del Gof
  2. Antipatterns Brown et al.
  3. Refactoring di Fowler
  4. Codice completo 2

Potrebbero essere libri molto buoni, ma non ti insegnano all'architetto un'applicazione. Sono spesso paralizzato da alcune decisioni molto basilari (esempio). Sto cercando un libro che insegna il quando e perché. Ci sono molti libri su martelli e unghie, ma devo ancora trovare un libro che ti dica qualcosa sulla loro relazione pratica.

Quale libro è stato più determinante nel renderti un oo-architetto/designer fiducioso?

È stato utile?

Soluzione

Il miglior libro che abbia mai letto su Oo è Bertrand Meyer Costruzione del software orientato agli oggetti.

È enorme ma è stato molto utile per me. Copre ogni singolo aspetto di OO Design IMVHO.

Altri suggerimenti

  1. "Costruzione del software orientato agli oggetti"Di Bertrand Meyer

Il lavoro più fondamentale sull'orientamento agli oggetti mai pubblicato. Questo è assolutamente DEVE avere un libro per ogni programmazione "orientata agli oggetti".

2. "Analisi e progettazione orientati agli oggetti con applicazioni"Di Grady Booch et al.

Non così formale come il libro di Meyer, ma questo libro può aprire gli occhi su molte domande nel mondo orientato agli oggetti e nello sviluppo del software in generale

3. "Modelli di progettazione: elementi di software riutilizzabile orientato agli oggetti"Di Erich Gamma et al.

Questo è il famoso libro "Gang of Four" sui modelli di design

4. "Refactoring: miglioramento della progettazione del codice esistente"Di Martin Fowler et al.

Questo è un altro libro classico. Prima parte descrive perfettamente molti problemi che lo sviluppatore di software moderno potrebbe affrontare durante il suo lavoro: odori di codice, leggibilità vs prestazioni, svantaggi di ottimizzazione prematura e molti altri argomenti.

5. "Pensando a Java"Di Bruce Eckel

Questo libro può aiutare molti principianti non solo nel linguaggio Java ma anche in modo di pensare orientato agli oggetti.

6. "Tocco di classe: imparare a programmare bene con oggetti e contratti"Di Bertrand Meyer

Ottimo libro di testo del famoso autore.

Comprendo appieno la tua situazione. Possiedi anche tre di questi libri;) suggerirei la prima edizione. Analisi e design orientati agli oggetti. Questo ti porterà sulle tracce giuste. Il libro del GOF è fantastico ma inutile fino a quando non avrai le basi attraverso la testa e il primo libro di testa ne occuperà. Saluti :)

In realtà fare una programmazione è di un aiuto maggiore che leggere su come fare la programmazione.

"Paralizzato da alcune decisioni molto basilari" è un sintomo di un problema più profondo: ingegneria eccessiva. Finché non costruisci un sacco di cose, non sai davvero quali decisioni contano e quali non importa.

Il modo migliore per ottenere l'esperienza necessaria è costruire molte cose.

Il codice Kata è molto, molto importante. http://slott-softwarearchitect.blogspot.com/search/label/code-kata

Inoltre, ho raccolto un mucchio di kata di codice che ho usato in un singolo progetto di grande, grande. http://homepage.mac.com/s_lott/books/oodesign.html

Dovresti usare link_to:

<%= link_to 'Button!', '#', :class => 'btn btn-large' %>
.

Lo uso in questo modo e funziona perfettamente.

L'aiutante button_to genera un modulo con un pulsante.Qui, vuoi solo un collegamento con un aspetto del pulsante.

L'unico modo per scoprire se un design è robusto è implementarlo. Non esiste un singolo libro che ti insegnerà come produrre progetti implementabili, si riduce all'esperienza e ai talenti. Tuttavia, faccio in secondo luogo il voto per il libro di Bertrand Meyer - basta essere consapevole che non ti trasformerà in un dio oo design.

Craig Larman's Applicazione di UML e motivi riassunto molto su ciò che avevo imparato dall'esperienza. Quello che mi piace è che affronta tutti gli aspetti della progettazione del software, che include cose come la progettazione e lo sviluppo iterative. Non fissare troppo duramente l'uso di UML: le descrizioni del design sono un mezzo per una fine e ho trovato l'approccio di Larman abbastanza pragmatico. Non puoi semplicemente codificare: devi comunicare le tue intenzioni (e capire cosa è necessario). Il codice UML e progettato in modo pulito, ben commentato, sono alcuni dei mezzi per tal fine.

E, naturalmente, come altri menzionano: nessun libro ti renderà un buon sviluppatore o designer. Ma potrebbe aiutare ad accelerare il processo.

Per un antipasto, suggerisco prima di testa Analisi e design orientati agli oggetti. Ti guida a creare un'applicazione OO in un semplice metodo intuitivo passo passo.

Anche se mi sono avvicinato a razionali, ho trovato questi due per offrire molte informazioni sul design OO.

  • Applicazione di UML e motivi - Craig Larman
  • UML 2 e il processo unificato: analisi e design orientati agli oggetti - Jim Arllow e Ila Neustadt
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top