Domanda

Richiesta ri-post da StackOverflow:

Sto lavorando in un piccolo tempo di sviluppo con il tempo molto limitato per lo sviluppo. Sviluppiamo uno strumento che è importante per il risultato del nostro lavoro, ma non utilizzata quotidianamente. Io sono l'unica persona nel team che ha un background come programmatore.

Il mio problema è che mi hanno spinto per le revisioni del codice prima di fondersi di nuovo al tronco per oltre un anno. Tutti erano d'accordo su questo, ma comunque è solo il mio codice che è stato rivisto. Di ritorno da una lunga vacanza torno ad un tronco con commenti del codice come "questa è una soluzione brutta - rimuovere al più presto possibile" e "quick fix". Ciò che è nuovo è che anche un ragazzo è stato nominato la responsabilità per lo strumento. (Un ruolo che il primo è stato offerto a me, ma ho rifiutato a causa di un motivo relativo non lavoro.) E pensa che questo è un modo ok per lavoro: Come abbiamo tale periodo di tempo limitato per lo sviluppo, dovremmo tagliare gli angoli del genere.

La mia preoccupazione è che gli altri sviluppatori di scrivere codice brutto: spesso la rottura incapsulamento, la scrittura classi enormi, aggiungendo classi interne in luoghi strani, avendo pochi o nessun test di unità, e così via. E alla fine impossibile sviluppare ulteriormente lo strumento.

dovrebbe insisto che eseguiamo revisioni del codice prima di fondersi di nuovo al tronco O sono solo una cagna qualità del codice?

È stato utile?

Soluzione

Sono stato in situazioni simili prima e IMHO dipende da "devo mantenere il codice".

Se devo mantenere il codice, di quanto io voglio il codice di alta qualità, io personalmente non richiedono revisioni del codice per ogni commit (vale a dire i programmatori possono decidere da soli se determinato codice ha bisogno di una revisione o no), ma se la leggibilità / soffre manutenibilità di quanto potrebbe essere in ordine.

Durante la lettura di questo:

La mia preoccupazione è che l'altro sviluppatori di scrivere codice brutto: spesso rompere l'incapsulamento, la scrittura enorme classi, aggiungendo classi interne a luoghi strani, avendo pochi o nessuna unità test, e così via. E alla fine impossibile sviluppare lo strumento ulteriormente.

Io credo che il problema è più grande di recensioni solo codice. Ti sembrano mancare alcune linee guida e / o non applicazione. Non avendo alcuni test / unit potrebbe essere una cattiva idea, ma dipende dal caso specifico. Tuttavia, breaking encapsulation, writing huge classes, ... davvero rendere il codice soggetto ad errori in modo che dovrebbe sicuramente essere fissato.

Altri suggerimenti

Credo che le revisioni del codice e il mantenimento di alcune linee guida di codifica è una buona idea, ma penso che farlo per ogni check-in è una perdita di tempo. E 'una buona idea quando si stabilisce una squadra e con i giovani programmatori, ma i programmatori esperti possono pensare per se stessi e alla fine si dovrà fidarsi di loro. Detto questo - si possono fare le revisioni del codice periodiche cosa fresca, ma guardando ogni riga di codice che entra nel vostro VCS è davvero esagerando

.

e una piccola commenti correzioni del vostro collega - alcune volte fanno una brutta correzione è la soluzione corretta . Può darsi che questo particolare codice non è abbastanza importante investire un sacco di tempo in, può essere che la soluzione più semplice è abbastanza buono ed è meglio investire tempo in altre cose. Effettuare la codice "bella" non è il vostro obiettivo principale come programmatore. Il vostro obiettivo principale è quello di fornire e ossessionato su ogni riga di codice semplicemente non si otterrà lì .

Quello che sto cercando di dire è - è necessario scegliere le tue battaglie. E 'ok per perdere la battaglia per un po' di classe di utilità insignificanti per vincere la guerra di consegna (o questa guerra sottosistema veramente importante, è per questo).

Se il programma in questione non è un one-off e getta prototipo, penso che le revisioni del codice dovrebbe essere obbligatorio per ogni check-in.

Gli sviluppatori anziani potrebbe avere un privilegio di check-in non-recensiti, una volta che essi sono noti per abbastanza coscienza per richiedere una revisione al momento opportuno.

Non è sicuro di revisione del codice è la risposta fino a quando qualcuno inizia a far rispettare gli standard di codifica migliore. Qualcuno scrive codice scadente, i commenti / lo ammette e controlli in ogni modo possibile. A che serve una revisione intenzione di fare se qualcuno vuole respingere il codice, ma vi metterà in ritardo?

Si sta andando ad avere bisogno di: standard prefissati, supervisionare più da vicino i principali colpevoli, e la sterlina in testa che buon codice non sempre prende più tempo di scrittura. Hanno bisogno di smettere di usare le scadenze come una scusa per essersi rifiutato di cambiare le cattive abitudini.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
scroll top