Metodi deprecati nel codice base

4

Molto del codice su cui ho lavorato di recente, sia a livello professionale (leggi: sul lavoro) che in altri ambiti (leggi: a casa, per amici / famiglia / etc, o NOT FOR WORK), è stato lavorato on, ridisegnato e ri-implementato più volte - laddove possibile / richiesto. Questo è stato nel tentativo di rendere le cose più piccole, più veloci, più efficienti, migliori e più vicine alle specifiche (quando i requisiti sono cambiati).

Un lato negativo di questo è che ora ho diverse basi di codice che hanno blocchi di metodo deprecati (e in alcuni punti oggetti piccoli). Sto cercando di rendere questo codice gestibile e facile da ripristinare i cambiamenti. Sto già utilizzando il software di controllo delle versioni in entrambe le istanze, ma mi chiedo se ci siano tecniche specifiche che sono state utilizzate da altri per mantenere i metodi sostituiti senza aumentare le dimensioni degli output compilati?

Al momento, sto semplicemente avvolgendo il vecchio codice in commenti multi linea in stile C.

Ecco un esempio di cosa intendo (stile C, codice psuedo):

void main ()
{
  //Do some work
  //Foo();  //Deprecated method call
  Bar();    //New method
}

/***** Deprecated code *****
/// Summary of Method
void Foo()
{
  //Do some work
}
***** Deprecated Code *****/

/// Summary of method
void Bar()
{
  //Do some work
}

Ho aggiunto un esempio di stile C, semplicemente perché sono più sicuro dei linguaggi in stile C. Sto cercando di mettere questa domanda come indipendente dal linguaggio (da cui il tag), e preferirei risposte agnostiche linguistiche, se possibile - dal momento che vedo questa domanda come una questione più tecnica e di design.

Mi piacerebbe mantenere i vecchi metodi e blocchi per una serie di motivi, tra cui la possibilità di ripristinare rapidamente un metodo di lavoro più vecchio in caso di fallimento di alcuni test o di circostanze impreviste.

C'è un modo migliore per farlo (i commenti multi linea)? Ci sono strumenti che mi permetteranno di memorizzare questi vecchi metodi in file separati? È una buona idea?

    
posta Jamie Taylor 03.04.2012 - 17:09
fonte

2 risposte

9

Is there a better way to do this (that multi line comments)? Are there any tools that will allow me to store these old methods in separate files? Is that even a good idea?

Dovresti monitorare e rimuovere tutto il blocco di codice commentato. Stai già utilizzando il controllo delle versioni, quindi il vecchio codice sarà disponibile ogni volta che ti senti nostalgico o se hai rotto qualcosa durante il refactoring.

Il codice commentato è solo una confusione inutile.

    
risposta data 03.04.2012 - 17:18
fonte
1

Il controllo del codice sorgente va bene per questo. Non devi lasciare il tuo codice di base ingombra di vecchi metodi / classi che non dovrebbero essere usati.

Tag o ramo in qualsiasi traguardo.

Puoi tornare a qualsiasi "ultima copia di lavoro" che ti piace in questo modo.

    
risposta data 03.04.2012 - 17:23
fonte