Il refactoring è una tecnica disciplinata per ristrutturare un corpo di codice esistente, alterando la sua struttura interna senza modificarne il comportamento esterno.
La base di codice con cui lavoro quotidianamente non ha test automatizzati, denominazione incoerente e tonnellate di commenti come "Perché è qui?", "Non sono sicuro se questo è necessario" o "Questo metodo non è chiamato giusto" e il codice è disseminato di "Log delle modifiche" nonostante il fatto che utilizziamo …
Ho letto alcune risposte a domande su una linea simile, ad esempio "Come si fa a far funzionare i test unitari durante il refactoring?". Nel mio caso lo scenario è leggermente diverso in quanto mi è stato dato un progetto da rivedere e allineare con alcuni standard che abbiamo, al …
Sono un grande sostenitore della regola del boy scout : Controlla sempre un modulo in modo più pulito rispetto a quando lo hai verificato. "Indipendentemente da chi fosse l'autore originale, e se avessimo sempre fatto qualche sforzo, non importa quanto piccolo, per migliorare il modulo. Quale sarebbe il risultato? Penso …
Questa domanda su SO parla della correzione di ciò che OP pensava fosse un codice di invidia delle caratteristiche . Un altro esempio in cui ho visto citare questa frase elegante è in una risposta data di recente qui in programmers.SE. Anche se ho lasciato un commento a quella risposta …
Ho un progetto. In questo progetto ho voluto riformattare per aggiungere una funzione e ho riformattato il progetto per aggiungere la funzione. Il problema è che quando ho finito, ho scoperto che avevo bisogno di apportare una piccola modifica all'interfaccia per adattarla. Quindi ho fatto il cambiamento. E quindi la …
A volte (raramente), sembra che creare una funzione che accetta una discreta quantità di parametri sia la strada migliore. Tuttavia, quando lo faccio, mi sento come se stessi spesso scegliendo l'ordine dei parametri a caso. Di solito vado per "ordine di importanza", prima con il parametro più importante. C'è un …
Come si fa a spiegare il refactoring (e il debito tecnico) a una persona non tecnica (in genere un PHB o un cliente)? ("Cosa, mi costerà un mese di lavoro senza alcuna differenza visibile ?!") AGGIORNAMENTO Grazie per tutte le risposte finora, penso che questo elenco fornirà diverse analogie utili …
Molto tempo fa abbiamo aggiunto una funzione in cui i nostri utenti potevano "accettare" un'immagine dopo che era stata aggiunta a una coda del flusso di lavoro. A quanto pare, abbiamo usato il termine sbagliato e gli utenti hanno effettivamente "approvato" l'immagine. Cambiare Accetta per approvare sulla nostra interfaccia è …
Lavoro con una base di codice di oltre 500.000 righe di codice. Ha un serio bisogno di refactoring. Sono stati identificati sforzi di refactoring che richiederanno più tempo del normale sprint di due settimane. Questi non possono essere suddivisi in compiti più piccoli, come ho visto suggerito in altre risposte …
Trovo che quando lavoro con il codice GUI, il codice tende a gonfiarsi più velocemente di altri tipi di codice. Sembra anche più difficile rifattorizzare. Mentre in altri tipi di codice posso refactificare abbastanza facilmente - trovo che posso scomporre una classe più grande in piccoli pezzi di funzionalità - …
Su un vecchio progetto di grandi dimensioni con un debito tecnico, come è possibile stimare o misurare in modo affidabile il vantaggio del codice di refactoring? Ad esempio, supponiamo di avere alcuni componenti all'interno di una soluzione di stack software scritti in una lingua precedente e alcuni componenti successivi scritti …
Devo estendere un modulo esistente di un progetto. Non mi piace il modo in cui è stato fatto (un sacco di anti-pattern coinvolti, come il codice copia / incollato). Non voglio eseguire un refactor completo per molte ragioni. Dovrei: creare nuovi metodi usando le convenzioni esistenti, anche se mi sembra …
Sto gestendo un piccolo team di sviluppatori. Ogni tanto decidiamo che passeremo un giorno o due a ripulire il nostro codice. Sarebbe una buona idea programmare un orario regolare, diciamo 1 settimana ogni 2 mesi, per ripulire il nostro codice?
Attualmente sto lavorando a un progetto più grande che sfortunatamente contiene alcuni file in cui le linee guida sulla qualità del software non sono sempre state seguite. Ciò include file di grandi dimensioni (leggi 2000-4000 righe) che contengono chiaramente più funzionalità distinte. Ora voglio riformattare questi file di grandi dimensioni …
Tutti sanno che i nuovi sviluppatori scrivono lunghe funzioni. Man mano che avanzi, riesci a dividere il codice in pezzi più piccoli e l'esperienza ti insegna il valore di farlo. Inserisci SQL. Sì, il modo SQL di pensare al codice è diverso dal modo procedurale di pensare al codice, ma …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.