Jako programiści powinniśmy być zawsze otwarci i jednocześnie sceptyczni.
Otwarte, ponieważ nie wiemy, kiedy programista może nas zaskoczyć, i sceptycznie podchodzimy do naszych własnych pomysłów, ponieważ często zapominamy, że w inżynierii oprogramowania nie ma jednego poprawnego sposobu wdrożenia rozwiązania. Racjonalne uzasadnienie naszych rozwiązań może mieć dla nas sens i nie mieć żadnego dla innych. Za zapachem kodu może być świetny pomysł. Być może programista nie znalazł sposobu, aby wyrazić to poprawnie.
Ponieważ my (ludzie) jesteśmy okropni w komunikacji, nie róbmy fałszywych założeń, chętnie zapytaj właściciela kodu o kod, który przeglądasz. Jeśli nie uda mu się zakodować pomysłu zgodnie ze standardami firmy, jako główny deweloper chętnie też go poprowadzi.
Tutaj podejście subiektywne. Podejście obiektywne, IMO, jest bardzo dobrze wyjaśnione w tym pytaniu .
Oprócz powyższego łącza zestaw celów do osiągnięcia (łatwość utrzymania, czytelność, przenośność, wysoka spójność, luźne połączenie itp.) Niekoniecznie jest Dziesięcioma Przykazaniami. Ty (zespół) powinieneś być w stanie dostosować te cele do punktu, w którym równowaga między jakością a produktywnością sprawia, że praca jest wygodna i „nadaje się dla deweloperów”.
Sugerowałbym użycie narzędzi do analizy kodu statycznego do pomiaru postępu jakości zgodnie z tymi celami. Narzędzia takie jak SonarQube zapewniają nam bramki jakości i profile jakości, które można dostosowywać zgodnie z naszymi priorytetami. Zapewnia nam także narzędzie do śledzenia problemów, w którym programiści mogą być ukierunkowani na problemy związane z zapachem kodu, błędami, wątpliwymi praktykami itp.
Tego rodzaju narzędzia mogą być dobrym punktem wyjścia, ale, jak powiedziałem, bądź sceptyczny. Niektóre zasady w Sonar mogą być dla Ciebie bez znaczenia, więc możesz je zignorować lub usunąć z profilu jakości.