Fare modifiche incrementali e future richieste / compatibili per prime senza cambiare comportamento: come si chiama?

5

Ho un metodo di codifica / refactoring che ora faccio automaticamente, ma mi rendo conto di non sapere come si chiama.

Se sto apportando una modifica e mi rendo conto che è necessario apportare una modifica ad un codice esistente, prendo sempre in considerazione la possibilità di apportare tali modifiche prima, senza alcun cambiamento di comportamento. Se posso, lo faccio, assicurandomi che i test passino, si impegnino e vengano distribuiti, se possibile. Solo allora apporto la modifica per l'attività in corso.

A volte, questo precedente cambiamento potrebbe rivelare effettivamente bisogno di un altro cambiamento, che può anche essere fatto prima, e così via. (Sebbene sia stato annidato diversi livelli in profondità è stato piuttosto raro, probabilmente perché la dimensione iniziale del compito che ho deciso di fare provo a mantenere comunque piccoli)

Come si chiama questo metodo?

    
posta Michal Charemza 18.02.2017 - 15:24
fonte

3 risposte

2

Non sono sicuro che ci sia un nome ufficiale per questo metodo.

Ma chiaramente, per analogia con i grafici, sei un esperto di ciò che chiamerei depth-first change propagation : quando si esegue una modifica, si approfondisce sempre l'ambito delle modifiche, aprendo ulteriori modifiche con un altro livello di dettaglio.

L'approccio tradizionale di "un cambiamento dopo l'altro" sarebbe più simile all'approccio largo prima : ogni cambiamento (livello) viene prima implementato prima di considerare la propagazione delle modifiche al livello successivo.

    
risposta data 18.02.2017 - 15:55
fonte
2

Lo chiamerei solo refactoring ma con micro commit o flusso di lavoro orientato al micro commit . (Mi è appena arrivato.) I punti salienti dell'articolo collegato che elenca i vantaggi di questo metodo:

  • micro commit mostrano il processo incrementale attraverso il quale hai raggiunto la tua soluzione finale
  • pratiche di sviluppo più disciplinate
  • recensioni del codice migliori
  • bisect e cherry-pick diventano più utili
risposta data 19.02.2017 - 21:12
fonte
2

Questo mi ricorda il Limited Red e Ricostruisci agli schemi approccio.

Il modello di variazione ristretta potrebbe corrispondere a quello che descrivi, a seconda di cosa intendi con "ci deve essere una modifica ad un codice esistente" .

    
risposta data 20.02.2017 - 16:20
fonte

Leggi altre domande sui tag