Szukając błędu, znalazłem kilka wierszy kodu, które okazały się trudne do odczytania i poprawiłem je pod kątem czytelności.
Ta zmiana przybliżyła kod do tego, co mówi nasza Konwencja kodowania, która również stwierdza, że powinniśmy „poprawić kod, który nie został napisany w tym stylu”.
Jeden z moich kolegów, który ma staż pracy, powiedzmy, ze względu na długość jego kadencji. Mądry facet, oddany kodowi i napisał ważne elementy. Odciąga mnie na bok i mówi:
Dlaczego to robisz? Zmieniasz mój kod. Jesteśmy drużyną. Ten kod został napisany w taki sposób, aby był zrozumiały dla wszystkich członków zespołu. I musi dać się utrzymać nawet po 100 latach. Jeśli nie będziesz postępować zgodnie z konwencjami zespołu, musimy się rozstać lub porozmawiam z menedżerami, abyś nigdy więcej nie musiał dotykać tego kodu. Ta rzecz ... nie zostanie zrozumiana przez młodszych programistów i wiem, co tam robisz, tylko dlatego, że widzę różnicę. Napisałem ten kod i znam każdą jego linię, a teraz ciężko mi go śledzić. Nie jest czytelny i piszę swój kod, więc wyjaśnia, co myślę. Powinieneś zrobić to, co ci każę - oznacza to, że nie dotykaj mojego kodu, a jeśli są błędy, po prostu napraw błąd i to wszystko.
OK, przyznaję, że jestem winny Nie stosowałem się do Code Convention do T, ale generalnie myślę, że moja wersja jest bardziej czytelna niż poprzednia.
Odwróciłem zmiany i po prostu naprawiłem błąd, który był kilka wierszy poniżej. Ale to mnie niepokoi, ponieważ jestem współwinny pozostawienia niechlujnego kodu. Nie jest to jedyne miejsce w bazie kodu, które ma długie wiersze i wiele instrukcji w jednym wierszu, ale przynajmniej nie musiałem spędzać z nim tylu iteracji.
Czy powinienem odpuścić, czy iść i porozmawiać z przełożonymi, jego menadżerami, ich menadżerami itp. Z jednej strony dla 3 linii będzie głupio, biorąc pod uwagę fakt, że niedawno dołączyłem, więc nie znają mnie tak dobrze, z drugiej strony to sprawa zasad i bardzo mnie to wkurza.
Wyjaśnienia:”
- Osoba, z którą rozmawiałem w tej rozmowie, nie jest moim menedżerem, jest rówieśnikiem. Jesteśmy na tym samym poziomie. Jego postrzegany staż pracy wynika z faktu, że był tam dłużej niż ja.
- Konwencja kodowania jasno mówi, że mogę zmienić kod, aby był zgodny z duchem konwencji kodowania. Konwencja została napisana przez jego bezpośredniego menedżera.
- @Fattie - generalnie zgadzam się, że obie wersje kodu są śmieciami. Jestem fanem Wujka Boba, Grady Boocha, Kenta Backa, Martina Fowlera itd. Więc wiem, co sugerujesz. Teraz nie poszedłem na całość, aby uczynić go nierozpoznawalnym, ponieważ bałem się po prostu wdać się w ten spór terytorialny. W tym przypadku po prostu postępowałem zgodnie z konwencją.
- Mam wrażenie, że niektórzy z was zakładają, że bycie nowym w tym miejscu oznacza niedoświadczony. Proszę, nie zakładaj tego.
- Dla mnie czytelność kodu jest wstępem do łatwiejszej konserwacji w przyszłości. Wiem, że mogę iść na skróty i zostawić to tak, jak jest. W końcu zamierzam zmienić statek. Przyszli deweloperzy będą musieli sobie z tym poradzić. Nie muszę komplikować sobie życia o 3 linijki kodu. Chciałem tylko zebrać opinie, czy walka jest tego warta. Pod tym względem (w tym przypadku) najbardziej sensowna jest odpowiedź @ A.O.