View Single Post
Old 03-04-2010, 15:22   #12
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Quote:
Originariamente inviato da tomminno Guarda i messaggi
Ok per il tuo ma per quello scritto da altri?
Puoi permetterti di rischiare di perderti nei meandri di un programma che magari funziona da anni? Sicuramente non documentato e di cui rischi di perderti qualche "nuanche" nascosta nelle decine di if annidati?
Doppotutto la scadenza è fissa (ed è sempre troppo a ridosso).
Manco a farlo apposta, ho scritto poco fa un commento a tal proposito riflettendo sugli altri che sono scritti dall'ultima volta che avevo letto il thread.
Quote:
Se la scadenza te lo consente...
Per la mia esperienza non lo consente mai, anche perchè magari ti ci vuole un mese solo per riscrivere quanto esistente e magari la modifica deve finire in produzione in meno di 2 settimane (test inclusi). E da capo progetto se qualcuno mi dicesse questo codice fa schifo lo riscrivo da 0 mi ci vuole 1 mese in più ovviamente gli direi si hai ragione il codice fa schifo, per me puoi fare tutto quello che vuoi ma in 2 settimane deve essere in produzione.
Specialmente perchè i tempi dei progetti sono stimati sul tempo necessario a realizzare la modifica, non per il rifacimento completo.
Dalla mia ho un paio di vantaggi: in azienda in Python ci lavoro quasi esclusivamente io (adesso finalmente c'è un collega che sta seguendo le mie orme ), e poi con questo linguaggio scrivo codice molto velocemente.

Comunque un po' di tempo per la rifattorizzazione lo si trova. Non dico sempre, ma dopo diversi mesi mi capita di trovare qualche giorno a disposizione per poterlo fare.

Oppure, mentre lavoro a un nuovo progetto o funzionalità per uno esistente, se mi capita di rimettere mano a codice già scritto e mi accorgo che c'è un pattern ricorrente, rifattorizzo solo quel pezzetto, lasciando il resto com'è.
Quote:
Originariamente inviato da tomminno Guarda i messaggi
Si se il software di partenza è scritto abbastanza bene lo puoi fare, ma il tipico codice è talmente interdipendente che sostituire una parte significa dove necessariamente andare a cambiarne anche un'altra e così via a catena fino alla riscrittura completa dell'intero software.
Per non parlare di software realizzati con vecchi linguaggi ormai morti es: VB6 o ASP.
Devi riscrivere tutto da 0 usando un linguaggio più moderno.
OK, ma a me capita di rado una situazione del genere. Vuoi perché, appunto, ci lavoro soltanto io. Vuoi perché ho la tendenza a scrivere codice con una certa interfaccia ben definita e "stabile" nel tempo, per cui la rifattorizzazione quasi sempre mi comporta un cambiamento dell'implementazione e non dell'interfaccia, quindi garantendo il funzionamento del codice già esistente che ne fa uso.
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro
@LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro
Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys
cdimauro è offline   Rispondi citando il messaggio o parte di esso