Farlo funzionare V / S Farlo funzionare correttamente

1

In qualche modo sono un po 'bravo negli algoritmi di codifica per piccoli progetti, ma quando si tratta di fare un tentativo per alcuni biggies, creo un hodge-podge e marshmallow della struttura del mio progetto. Ho studiato molti libri sull'ingegneria del software e sugli SDLC in cui dicono che diventare uno sviluppatore è ciò che ogni angolo può fare, ma lo sviluppatore effettivo è colui che segue un approccio sistematico al problema e lo risolve nel modo in cui significava essere.

Il mio codice funziona bene per progetti così confusi, ma diventa troppo difficile per la manutenzione e ulteriori aggiornamenti.

Quindi, mi piacerebbe ricevere suggerimenti in merito a quale dovrebbe essere l'approccio corretto per pianificare le grandi mosse

    
posta PsyCoder 13.06.2011 - 17:24
fonte

2 risposte

4

Un leggero accenno ma un buon design ti vedrà solo fino a quando non è sempre possibile sapere dove il progetto sta andando avanti con mesi o anni di anticipo. Qual è la struttura giusta oggi potrebbe non essere la struttura giusta in un anno in cui ti è stato chiesto di apportare modifiche, in cui il tuo design anteriore è risultato non ottimale e così via.

La risposta è quella di refactactor non appena si vede un problema - rielaborare il codice per rimuovere il pasticcio non appena inizia a diventare disordinato. In qualsiasi momento la soluzione dovrebbe essere corretta (o il più vicino possibile) per ciò che hai codificato finora.

Ciò richiede ovviamente del tempo, ma a lungo termine ti ritroverai con una soluzione che rimarrà utilizzabile e mantenibile per molto più tempo rispetto a quando non lo fai.

    
risposta data 13.06.2011 - 17:34
fonte
1

Sembra che si tratti di progetti personali, quindi ecco cosa suggerisco:

  1. Scrivi una descrizione (massima) di una pagina su cosa dovrebbe fare questo sistema. Nessun esempio di codice, nessun screenshot, solo una semplice descrizione testuale che potresti leggere a qualcun altro e dare loro una panoramica di alto livello su ciò che fa il sistema.

  2. Scrivi alcuni semplici requisiti per il sistema per descrivere come costruirai il sistema. Includi input e output di esempio e dati per cui è utile. Proteggi i modelli per dove è utile. I diagrammi di progettazione del database, diagrammi di flusso, ecc ..., possono essere utili.

  3. Rompi lo sviluppo in piccoli traguardi facilmente realizzabili. Ad esempio, invece di qualcosa come "Crea GUI completa", avere: "Crea schermata principale", "Aggiungi pulsanti per Aggiungi / Aggiorna dati", "Aggiungi funzionalità per pulsanti", ...

  4. Sentiti libero di rivedere tutte le parti di cui sopra mentre lo sviluppo procede e impari e scopri cose nuove. A volte una decisione di progettazione che sembra geniale nella fase iniziale diventa irrealizzabile una volta che è il momento di metterla in codice, quindi è OK tornare indietro e cambiare le cose.

Se questo è per progetti personali, non è necessario farlo in modo molto formale, quanto basta per mantenere i tuoi pensieri organizzati e chiari.

Questo è ciò che funziona per me, comunque. ;)

    
risposta data 13.06.2011 - 17:35
fonte

Leggi altre domande sui tag