Wie führe ich eine Codeüberprüfung durch?

Im Leben eines Entwicklers kommt eine Zeit, in der er beginnt, eine Codeüberprüfung durchzuführen. In der Regel ist dies eines der Zeichen für das Wachstum eines Programmierers: Sie hören wirklich auf seine Meinung und vertrauen ernsthafteren Aufgaben. Der genaue Zeitpunkt, zu dem ein Entwickler aufgefordert wird, eine Überprüfung durchzuführen, hängt von der Struktur des Unternehmens ab: Es gibt Teams, in denen nach einiger Zeit mehr oder weniger alles erledigt werden kann, und es gibt Teams, in denen der Überprüfungsprozess vollständig bei den ältesten und erfahrensten Kollegen liegt.


Gleichzeitig sprechen nur wenige Menschen darüber, welche Grundsätze für eine Qualitätsprüfung zu beachten sind: Was sind die Hauptziele dieses Verfahrens, worauf ist überhaupt zu achten, wie schnell muss es durchgeführt werden?


Daher sieht der Google Review Guide wie ein sehr wertvolles Dokument aus, dessen Übersetzung des ersten Teils später vorgestellt wird. Übersetzungen der restlichen Teile werden später in separaten Beiträgen veröffentlicht. Es ist erwähnenswert, dass dies eine angepasste Übersetzung ist, nicht alle werden Wort für Wort im Namen weiterer russischer Formulierungen und Sätze übersetzt.


Terminologie:


CL : "Änderungsliste" - Eine Liste der Codeänderungen, die zur Überprüfung an das Versionskontrollsystem gesendet werden. Analog zu Pull Request in GitHub oder Merge Request in GitLab.


1. Überprüfung des Standardcodes


Der Hauptzweck der Überprüfung besteht darin, die Codebasis von Google zu verbessern. Alle Instrumente und Mittel zur Durchführung einer Überprüfung zielen speziell auf die Erreichung dieses Ziels ab.


Auf dem Weg zum Erreichen des erklärten Ziels müssen wir eine Reihe von Kompromissen eingehen.


Erstens sollten Entwickler in der Lage sein, ihre Aufgaben zu erledigen. Wenn Sie keine Änderungen an der Codebasis akzeptieren, wird diese niemals verbessert. Für den Fall, dass der Prüfer Änderungen zu kompliziert vornimmt, werden die Entwickler in Zukunft einfach nichts unternehmen.


, CL , . , . , .


, . , , , " ".


, , :


CL , , CL .


.


, : CL , , , .


, : , . CL , , CL , , . , , . CL, , , , .


, , , , . , , "Nit: ", .


: CL, . .


1.1.


- , , . , , - . , . , ( ), "Nit: " .


1.2.


  • .
  • style guide .
    , style guide . , .
  • .
    / , . .
    , , , . .
  • , , , , .

1.3.


, , , , : CL .


, : . , CL, .


, — , , , . CL "" , .


2.


: - .


2.1. ()


, — CL . CL? : ? ? ?


2.2.


CL , ? ? "" ( ), , .


, . , , , , , , .


, CL: , . , .


, — CL . , — . , , . ( ).


2.3.


CL — , , . , -, , -, .


, , , . , , , , . , .


2.4.


, , : , end-to-end . , CL, .
.


— , , .
, ? , ? , ? ?


, — , . , , .


2.5.


, . , , , , .


2.6.


, ? ? , , , , , : , . , . , , , : , .


, CL: , "TODO", , .


, — , . , .


2.7.


Google , . , CL .


, , ("Nit:"). CL .


CL . , . , , , CL — , .


2.8.


CL , , , , , README, g3doc (. — Google ) . CL , , . , .


2.9.


. , , , , . , - — . , .


, , , . Google . , , , , . , , , , .


, , , . , , , , .


2.10.


, , . , , : , , 4 , , 50 .


CL : CL , ?
CL, . , , CL.


2.11.


CL , : , . , , .



:


  • ,
  • ,
  • : , ,
  • ,
  • ,
  • ,
  • ,
  • , , ,
  • , , ( ),
  • (g3doc),
  • -.

Sie sollten sich jede Codezeile ansehen , den Kontext berücksichtigen , sicherstellen, dass Sie den Status der Codebasis verbessern und erfolgreiche Entwicklerentscheidungen fördern.


Im nächsten Teil werden wir diskutieren, wie Sie im CL besser navigieren und wo Sie mit der Überprüfung beginnen können.

Source: https://habr.com/ru/post/undefined/


All Articles