Pracuję nad starą bazą kodu, która ... nie jest idealna , w środowisku, które też nie jest. To nie jest najgorsza baza kodów, jaką widziałem w życiu, ale wciąż jest wiele problemów: zerowe testy jednostkowe; metody z tysiącem + linii kodu; niezrozumienie podstawowych zasad obiektowych; itp.
Utrzymanie kodu boli.
- Za każdym razem, gdy muszę debugować tysiąc wierszy źle napisanej metody ze zmiennymi ponownie wykorzystanymi, jestem całkowicie zagubiony.
- Niektóre modyfikacje lub refaktoryzacje wprowadziłem błędy w innych miejscach aplikacji.
- Brak dokumentacji, testów lub obserwowalnej architektury w połączeniu ze źle nazwanymi metodami sprawia, że zapełniam całą dostępną pamięć roboczą. Nie ma już miejsca na wszystkie inne rzeczy, które muszę pamiętać, aby zrozumieć kod, który powinienem zmodyfikować.
- Ciągłe przerwy w miejscu pracy niepokoją mnie i spowalniają.
- Nie pamiętam więcej niż dwóch lub trzech zadań na raz bez systemu śledzenia błędów i zapominam o nich wszystkich w weekend.
Wydaje się, że moi koledzy nie mają podobnych problemów.
- Udaje im się debugować źle napisane metody znacznie szybciej niż ja.
- Wprowadzają mniej błędów niż ja przy zmianie bazy kodu.
- Wydaje się, że dobrze pamiętają wszystko, czego potrzebują, aby zmienić kod, nawet jeśli wymaga to odczytania tysięcy wierszy kodu w dwudziestu różnych plikach.
- Wygląda na to, że nie przeszkadzają im wiadomości e-mail, dzwoniący telefon, ludzie rozmawiają dookoła i inni zadają im pytania.
- Nie chcą korzystać z systemu śledzenia błędów, który już mamy, odkąd korzystamy z TFS. Wolą po prostu pamiętać każde zadanie, które powinni wykonać.
Dlaczego to się dzieje? Czy są to szczególne umiejętności, które deweloperzy nabywają, pracując ze źle napisanym kodem przez długi czas? Czy mój względny brak doświadczenia ze złym kodem przyczynia się do tych problemów / uczuć? Czy mam problemy z pamięcią?