How To Write „Good Legacy Code”
Oto kilka szybkich punktów wyjścia do pisania dobrego kodu dziedzictwa. Kod jest o wiele łatwiejszy do napisania niż do przeczytania, a najlepszym sposobem na rozwiązanie problemów jest nie tworzenie ich.
Pisz mniej kodu
Mniej kodu = mniejszy potencjał błędów = mniej do utrzymania = mniej „złego dziedzictwa”.
Pisanie mniejszej ilości kodu może być postrzegane jako pojedynczy najważniejszy sposób na ulepszenie kodu w ogóle. Zasada DRY może być postrzegana jako naturalne następstwo i podstawowy środek do pisania mniej i osiągania więcej.
Unikaj // TODO i // FIXME
Pisanie // TODO
lub // FIXME
powinno być postrzegane jako czerwona flaga i zapach kodu.
Jeśli przetłumaczymy te komentarze na ich rzeczywiste znaczenia, to „TODO” tłumaczy się jako „tworzenie długu technicznego”, a „FIXME” jako „celowo piszę błąd”.
Mogą istnieć rzadkie wyjątki, gdzie odroczenie rozwiązania przeważa nad korzyściami rozwiązania go teraz, ale ogólnie, TODO i FIXME powinny być ograniczone do minimum.
Preferuj utrwalone idiomy nad najnowocześniejsze
To może wydawać się sprzeczne… używanie najnowocześniejszych technologii sprawia, że kod jest bardziej „nowy”, prawda? Cóż, tak, ale również stwarza potencjał do szybszej dezaktualizacji.
Daje to również nowym programistom trudniejszy czas na rozgryzienie rzeczy. Jeśli kod jest napisany przy użyciu ustalonych idiomów i frameworków, jest prawdopodobnie łatwiejszy do odczytania i ma większe szanse na dłuższą pracę w przyszłości.
Zawsze zostawiaj kod w lepszym stanie niż go zastałeś
To może wydawać się sprzeczne z „bez przepisywania” wspomnianym na początku, jednak ciągłe ulepszanie i refaktoryzacja różni się od robienia znaczącego przepisywania.
Postaraj się nabrać nawyku stopniowego i przyrostowego ulepszania rzeczy. Czasami duży refaktoring lub przepisanie jest naprawdę potrzebne, ale wartość biznesowa tego musi być starannie zważona na inne priorytety.
Ciągłe doskonalenie się jako programista
Czytaj książki, czytaj wpisy na blogach, czytaj kod innych ludzi, uważnie myśl o projektowaniu i praktykach programistycznych. Świadomie zastanawiaj się nad swoim kodem i myśl o sposobach na poprawę.
Zamiast obwiniać poprzedniego programistę za pozostawienie po sobie złego dziedzictwa, upewnij się, że nie staniesz się programistą, który stworzy nowe.