Quando inizio a scrivere codice da zero, ho la cattiva abitudine di scrivere rapidamente tutto in una funzione, tutto il tempo pensando "lo renderò più modulare in seguito". Poi, quando arriva più tardi, ho un prodotto funzionante e qualsiasi tentativo di risolverlo significherebbe creare funzioni e dover capire cosa devo passare.Superare la cattiva abitudine di "aggiustarlo più tardi"
Diventa peggio perché diventa estremamente difficile riprogettare le classi quando il progetto è quasi finito. Per esempio, di solito faccio qualche pianificazione prima di iniziare a scrivere il codice, poi quando il mio progetto è terminato, mi sono reso conto che avrei potuto rendere le classi più modulari e/o avrei potuto usare l'ereditarietà. Fondamentalmente, non penso di fare abbastanza pianificazione e non ottengo più di un livello di astrazione.
Quindi, alla fine, sono bloccato con un programma con una grande funzione principale, una classe e alcune funzioni di supporto. Inutile dire che non è molto riutilizzabile.
Qualcuno ha avuto lo stesso problema e ha qualche consiglio per superare questo? Una cosa che avevo in mente era scrivere la funzione principale con pseduocode (senza molti dettagli ma abbastanza per vedere quali oggetti e funzioni hanno bisogno). Essenzialmente un approccio top-down.
Questa è una buona idea? Qualche altro suggerimento?
Ho chiesto di recente una simile procedura riguardante la pianificazione del progetto, ma i nostri problemi sono leggermente diversi. Forse alcune risposte potrebbero esserti utili. http://stackoverflow.com/questions/1100819/how-do-you-design-object-oriented-projects – Victor
Mi ricompenso con il cioccolato. – Maxpm