Le revisioni del codice sono importanti perché migliorano la qualità del codice e rendono la vostra base di codice più stabile. Inoltre, aiutano i programmatori a costruire relazioni e a lavorare insieme in modo più efficace.
Ma revisionare il codice di un collega è più facile a dirsi che a farsi. Per non parlare del fatto che gestire un processo di revisione può essere un incubo per i team leader. Per questo motivo, spieghiamo cosa cercare in una revisione del codice, il processo di revisione del codice e quali sono le nove migliori pratiche di revisione del codice.
Leggi o vai avanti alla sezione che ti interessa di più:
- Migliori pratiche di revisione del codice
- Migliori pratiche di revisione del codice tra pari
- Migliori pratiche di revisione del codice per come eseguire una revisione del codice
- Applica le migliori pratiche di revisione del codice con gli strumenti giusti
- ▶️ Inizia la tua prova gratuita di analisi statica del codice
Code Review Best Practices
Queste sono le nove best practices di code review:
1. Sapere cosa cercare in una revisione del codice
2. Costruire e testare – prima della revisione
3. Non revisionare il codice per più di 60 minuti
4. Controllare non più di 400 linee alla volta
5. Dare un feedback che aiuti (non che danneggi)
6. Comunicare obiettivi e aspettative
7. Includere tutti nel processo di revisione del codice
8. Promuovere una cultura positiva
9. Automatizzare per risparmiare tempo
Buone pratiche di revisione del codice tra pari
Vi sveliamo i segreti meglio custoditi della revisione tra pari. Le revisioni tra pari si basano sulla collaborazione, non sulla competizione.
Seguite queste cinque buone pratiche di revisione del codice tra pari.
Sapere cosa cercare in una revisione del codice
È importante andare alle revisioni sapendo cosa cercare. Cercate cose chiave, come…
Struttura. Stile. Logica. Prestazioni. Copertura dei test. design. Leggibilità (e manutenibilità). Funzionalità.
Si possono fare controlli automatici (es. analisi statica) per alcune cose – es. struttura e logica. Ma altri – ad esempio il design e la funzionalità – richiedono un revisore umano per valutare.
Rivedere il codice con certe domande in mente può aiutare a concentrarsi sulle cose giuste. Per esempio, potreste valutare il codice per rispondere:
- Ho capito cosa fa il codice?
- Il codice funziona come mi aspetto?
- Questo codice soddisfa i requisiti normativi?
Valutando il codice in modo critico – con le domande in mente – sarete sicuri di controllare le cose giuste. E si ridurrà il tempo per i test.
Costruire e testare – prima della revisione del codice
Nell’era odierna della Continuous Integration (CI), è fondamentale costruire e testare prima di fare una revisione manuale. Idealmente, dopo che i test sono passati, si condurrà una revisione e si distribuirà alla codeline dev.
Questo assicura la stabilità. E fare prima i controlli automatici ridurrà gli errori e farà risparmiare tempo nel processo di revisione.
L’automazione vi impedisce di perdere tempo nelle revisioni.
▶️ Inizia la tua prova gratuita di analisi statica del codice >>>
Non rivedere il codice per più di 60 minuti
Non rivedere mai per più di 60 minuti alla volta. La performance e l’attenzione al dettaglio tendono a diminuire dopo quel punto. È meglio condurre le revisioni spesso (e in brevi sessioni).
Fare una pausa darà al tuo cervello la possibilità di resettare. Così, potrete rivedere tutto di nuovo con occhi nuovi.
Darsi il tempo di fare brevi e frequenti revisioni vi aiuterà a migliorare la qualità del codice.
Controlla non più di 400 linee alla volta
Se cercate di revisionare troppe linee di codice in una volta, avrete meno probabilità di trovare difetti. Cercate di mantenere ogni sessione di revisione a 400 linee o meno. Fissare un limite di linee di codice (LOC) è importante per le stesse ragioni di fissare un limite di tempo. Vi assicura di essere al meglio durante la revisione del codice.
Concentrarsi su meno di 400 linee rende le vostre revisioni più efficaci. E vi aiuta a garantire una maggiore qualità nel codebase.
Dare un feedback che aiuta (non fa male)
Cercate di essere costruttivi nel vostro feedback, piuttosto che critici. Potete farlo facendo domande, piuttosto che fare affermazioni. E ricordati di dare un elogio insieme al tuo feedback costruttivo.
Dare un feedback di persona (o anche fare la vostra revisione di persona) vi aiuterà a comunicare con il tono giusto.
Il vostro codice dovrà sempre essere rivisto. E avrete sempre bisogno di rivedere il codice dei vostri colleghi. Quando ci si avvicina alle revisioni come un processo di apprendimento, tutti vincono.
📕 Risorsa correlata: Sfida degli sviluppatori: Are Your Code Reviews Effective?
Code Review Best Practices For How to Run a Code Review
Gestire una code review – e assicurarsi che tutto sia stato revisionato correttamente – può essere una sfida enorme.
Seguite queste quattro buone pratiche per come eseguire una revisione del codice.
Comunicare gli obiettivi e le aspettative
Si dovrebbe essere chiari su quali sono gli obiettivi della revisione, così come le aspettative dei revisori. Dare ai vostri revisori una lista di controllo assicurerà che le revisioni siano coerenti. I programmatori valuteranno il codice degli altri con gli stessi criteri in mente.
Comunicando obiettivi e aspettative, tutti risparmiano tempo. I revisori sapranno cosa cercare – e saranno in grado di usare saggiamente il loro tempo nel processo di revisione.
Includere tutti nel processo di revisione del codice
Non importa quanto senior sia il programmatore, tutti devono rivedere ed essere rivisti. Dopo tutto, tutti lavorano meglio quando sanno che qualcun altro guarderà il loro lavoro.
Quando si eseguono le revisioni, è meglio includere sia un altro ingegnere che l’architetto del software. Essi individueranno diversi problemi nel codice, sia in relazione al più ampio codebase che al design generale del prodotto.
Includere tutti nel processo di revisione migliora la collaborazione e le relazioni tra programmatori.
▶️ Inizia la tua prova gratuita di Helix Swarm >>>
Favorire una cultura positiva
Favorire una cultura positiva intorno alle recensioni è importante, perché giocano un ruolo vitale nella qualità del prodotto. Non importa chi ha introdotto l’errore. Ciò che conta è che il bug è stato catturato prima che entrasse nel prodotto. E questo dovrebbe essere celebrato.
Facendo crescere una cultura positiva, aiuterete il vostro team ad apprezzare (piuttosto che temere) le revisioni.
Automatizzare per risparmiare tempo
Ci sono alcune cose che i revisori dovranno controllare nelle recensioni manuali. Ma ci sono alcune cose che possono essere controllate automaticamente usando gli strumenti giusti.
Gli analizzatori statici di codice, per esempio, trovano potenziali problemi nel codice controllandolo rispetto alle regole di codifica. L’esecuzione di analizzatori statici sul codice minimizza il numero di problemi che raggiungono la fase di peer review. Anche l’uso di strumenti per revisioni leggere può aiutare.
Utilizzando strumenti automatizzati, si può risparmiare tempo nel processo di peer review. Questo libera i revisori per concentrarsi sui problemi che gli strumenti non possono trovare – come l’usabilità.
📕 Contenuti correlati: Come fare la revisione del codice
Applica le migliori pratiche di revisione del codice con gli strumenti giusti
Se vuoi applicare le migliori pratiche per la revisione del codice, avrai bisogno dei migliori strumenti.
Una migliore revisione del codice inizia con gli strumenti Perforce
Perforce dispone di strumenti per migliorare il processo di revisione dall’inizio alla fine.
Come gli analizzatori statici di Perforce migliorano la revisione del codice fin dall’inizio
Gli analizzatori statici di Perforce – Helix QAC per C/C++ e Klocwork per C, C++, C# e Java – possono essere utilizzati per analizzare il codice ed eliminare gli errori di codifica prima che il codice arrivi alla fase di peer review.
Entrambi si assicurano che il vostro codice sia conforme alle regole di codifica. E evidenzia e dà priorità ai problemi che devono essere risolti, così i programmatori possono essere più efficienti nel processo di revisione.
I revisori possono aggiungere le loro annotazioni nel codice sorgente – insieme ai messaggi diagnostici di Perforce Static Analyzers. E i programmatori ricevono notifiche quando gli Static Analyzers trovano problemi che riguardano la loro porzione di codice.
Come Helix Swarm rende facile la collaborazione
Helix Swarm è uno strumento di revisione del codice basato sul web, incluso in Helix Core. Puoi usarlo per scalare le revisioni man mano che il tuo team cresce e migliorare la collaborazione durante il processo.
Helix Swarm rende facile eseguire le revisioni automatizzando il processo. I team possono usare questo strumento per monitorare i progressi e vedere quali sono completi e quali sono ancora in corso.
I revisori ricevono notifiche automatiche sui loro compiti e una dashboard dei loro elementi di azione. Inoltre, tutti possono facilmente collaborare avendo conversazioni direttamente nel codice. Guarda come Helix Swarm ti aiuterà.
▶️ Guarda una demo di Helix Swarm
Enforce Code Review Best Practices With Static Analysis
Gli analizzatori statici di codice di Perforce – Helix QAC e Klocwork – e Helix Swarm si integrano con Jenkins e altri build runner. In questo modo, è possibile eseguire build e test prima dei cicli di revisione tra pari.
Utilizzando gli strumenti di revisione del codice Perforce si eliminano i tempi di attesa e si aiuta a collaborare meglio durante il processo. Scoprite voi stessi come gli analizzatori statici di Perforce vi aiuteranno.
▶️ analisi statica del codice prova gratuita