Code review

Pokyny pre autora

Kód môže byť posunutý na prehliadku kódu (code review) až vtedy, keď autor urobil prvotnú kontrolu, prešli všetky testy a skontrolujte si dodržiavanie konvencií pre písanie kódu.

Autor je povinný poskytnúť aspoň základný prehľad urobených zmien a k nim dôvod, prečo sú potrebné.

Recenzent (reviewer) sa bude vyberať najmä na základe znalosti danej oblasti kódu. Ak nie je nikto s prednostnou znalosťou danej oblasti, druhým hlavným faktorom je dostupnosť. Prednosť má člen, ktorý aktuálne nie je recenzentom, prípadne má pridelených najmenej úloh na prehliadku.

Pokyny pre Recenzenta

Každý recenzent je povinný skontrolovať následné časti:

  • podrobná kontrola zmenenej logiky systému

    • správnosť
    • efektívnosť
  • dodržiavanie konvencií

    • názvy premenných, funkcií
    • zarovnanie
    • písanie if-statement
  • čistota kódu

    • čitateľnosť
    • zrozumiteľnosť

Primárna je kontrola logiky, ktorá musí byť najpodrobnejšia a mala by sa vykonávať prvá. Kontrola konvencie a čistoty kódu sú však taktiež dôležité.

Všetky pripomienky budú zaznamenané v rámci pull request-u v systéme TFS, ku konkrétnemu riadku, ktorého sa daná pripomienka týka (ak ide o väčší logický celok, pripomienka bude uvedená na začiatku tohto celku, napr. pri definícií funkcie).

Zaznamenávajú sa ako pripomienky k logike tak aj k dodržiavaniu konvencií a čistote kódu.

V prípade neistoty recenzent najprv kontaktujte autora a až po overení zadá pripomienka v systéme TFS.

Ak je niektorá z pripomienok chybná a nepotrebuje žiadnu reakciu zo strany autora, autor poskytne vysvetlenie k pripomienke v systéme TFS.

V prípade, že je kód príliš ťažký na pochopenie, resp. je príliš nepriehľadný (nízka čistota kódu) recenzent môže zamietnuť daný pull request a vrátiť ho autorovi na úpravu.

Kontrolný zoznam pre recenzenta:

  • Úspešné spustenie danej časti kódu
  • Úspešný výsledok všetkých testov týkajúcich sa danej časti kódu
  • Pochopenie upravovanej logiky
  • Evidencia pripomienok v systéme TFS
  • Kontrola dodržiavania konvencií a čistoty kódu
  • Evidencia pripomienok k čistote kódu v systéme TFS