Cześć! Dzisiaj opowiem Ci czym jest i do czego służy code-review. Zapraszam!

Czym jest code-review?

Zanim zacznę opisywać po co warto stosować code-review, musisz dowiedzieć się, czym on w ogóle jest.

Według wikipedii: „Inspekcja kodu” – praktyka w dziedzinie inżynierii oprogramowania mająca na celu wykrycie i poprawienie błędów popełnionych w kodzie w czasie fazy pisania oprogramowania, a co za tym idzie, poprawienie jakości tworzonego produktu. Praktyka ta polega na przeglądzie kodu napisanego przez programistę przez inną osobę przed włączeniem kodu do systemu kontroli wersji i przekazaniem go do testowania.

Czyli w skrócie, code-review służy do tego, żeby kod, który piszemy sprawdzić świeżym okiem, czy kod nie zawiera błędów logicznych, jest zbyt nieczytelny, lub w jakimś przypadku może spowodować awarię (testowanie oprogramowania).

Dbanie o dobry kod

Jeżeli chcesz być dobry/dobra w programowaniu, to musisz dbać o swój kod. Jeżeli nie do końca wiesz, co zrobić, żeby ten kod był lepszy, to (według mnie) warto po prostu poprosić kolegę z pracy, który jest bardziej doświadczony. Dzięki temu, że pokażemy kod drugiemu programiście możemy dowiedzieć się, że dana funkcja jest niepotrzebna, a ifa możemy trochę zmienić. Co Ci to da? Na pewno będziesz bardziej uważny/uważna w przyszłości na wszystkie funkcje, które piszesz, oraz dbał o to, żeby warunek dokładnie sprawdzał to, czego oczekujesz.

Głupie błędy

Jesteśmy ludźmi, także każdy może się pomylić. Również programiści. Co konkretnie mam na myśli? Na przykład zamiast ustawienia wartości true, jeżeli data publikacji jest wcześniejsza od aktualnej daty, to ustawimy false. Jaki jest tego efekt? Niezbyt dobry, ponieważ przez to post, który ustawiłeś/ustawiłaś do automatycznej publikacji no niestety, nie ujrzy światła dziennego.

Innym przykładem może być np. zły typ dla konkretnego pola w bazie danych. Po co mamy zdefiniować typ text, skoro możemy zdefiniować typ varchar? Dzięki temu oszczędzimy trochę miejsca. Ktoś może powiedzieć „ale to tylko kilka bajtów”. Owszem. Dla kilku rekordów to faktycznie może być znikoma ilość, ale co w przypadku, gdy tych rekordów będzie bardzo dużo? Baza danych będzie ważyła dużo więcej, przez zły dobór typów.

Zmienne

Jeżeli programujesz, to wiesz zapewne jak bardzo ważne jest nazywanie zmiennych. Oczywiście to, że powinny się one nazywać po angielsku, chyba nie trzeba mówić? 😉 Warto też nauczyć się dobrze je wykorzystywać. Na przykład, jeżeli mamy do wyświetlenia wszystkie artykuł to nie napiszemy zmiennej pokazArtykuly, tylko raczej showArticle. Dzięki temu będzie czytelniej, ponieważ po pierwsze, kod jest po angielsku, więc i zmienna taka powinna być, a po drugie wiemy, że dostajemy właśnie artykuł.

Komentarze

Ja osobiście, kiedyś w ogóle nie używałem komentarzy w swoim kodzie. Uważałem, że jest to bez sensu, zajmuje tylko niepotrzebnie miejsce, no i kod jest mniej czytelny. Bo oprócz funkcji, mam tylko jakieś durne komentarze. Generalnie w pracy możesz mieć wymóg tworzenia komentarzy dla każdej metody, klasy, czy zmiennej. Są oczywiście do tego różne „ułatwiacze”, które zrobią to za Ciebie. Wszystko zależy z jakiego oprogramowania korzystasz 😉

Testy jednostkowe

O testach jednostkowych jeszcze na swoim blogu nie pisałem, co nie oznacza, że taki post się nie pojawi. Na pewno prędzej, czy później, zawita on na moim blogu jako osoby post. Póki co powiem, że jeżeli nie umiesz tworzyć testów jednostkowych to warto się tego nauczyć. Tutaj również piszemy kod, i on także może zostać oceniony przez drugą osobę. Dzięki temu, być może, nauczysz się jak lepiej testować swój kod.

Podsumowanie

Jak widać wyżej, warto pokazać swój kod drugiej osobie. Owszem, będziesz narażony/narażona na krytykę, niekoniecznie pozytywną, i nie wszystkie mogą wiązać się z pozytywną odpowiedzią. Ale dzięki temu jesteś w stanie nauczyć się, jak pisać kod lepiej, i dlaczego daną funkcję warto przenieść w inne miejsce.

To już wszystko, co przygotowałem na dziś. Mam nadzieję, że dzięki temu, nie będziesz bał(a) się pokazać swojego kodu innym. Standardowo, zapraszam Cię na moje socialmedia, dzięki którym będziesz informowany/a o nowych postach. Cześć!