Myślę, że TODO
komentarze do pewnego stopnia mają sens. Szczególnie jeśli pracuje iteracyjnie (co jest powszechne w sklepach zwinny i TDD), nie będzie rzeczy, które można rozpoznać się będzie potrzebne przed długi, ale czego nie chcą zrobić objazd do wdrożenia w prawo, potem i tam.
Brzydkie jest to, że takie komentarze pozostają w bazie kodu. Gdy aktywnie pracujesz nad funkcją, możesz ją zostawić, ale gdy tylko zbliżysz się do jej ukończenia, powinieneś skupić się na ich usunięciu. Jeśli nie chcesz przejść przez pracę polegającą na zastąpieniu ich odpowiednim, działającym kodem, przynajmniej weź pod uwagę odpowiednią funkcjonalność. Aby pożyczyć przykład @ JoonasPulakka, w którym kod początkowo mówi
ConnManager.getConnection("mydatabase"); // FIXME: DB name should be configurable
możesz to zmienić na coś takiego
ConnManager.getConnection(GetDatabaseName());
na razie GetDatabaseName () jest kodem pośredniczącym, który po prostu zwraca ten sam ciąg, od którego zacząłeś. W ten sposób istnieje wyraźny punkt przyszłej rozbudowy i wiesz, że wszelkie wprowadzone tam zmiany zostaną odzwierciedlone wszędzie tam, gdzie potrzebna jest nazwa bazy danych. Jeśli nazwa bazy danych jest nawet umiarkowanie ogólna, może to być znaczna poprawa w zakresie konserwacji.
Osobiście używam własnego słowa kluczowego zamiast ściśle TODO
, chociaż cel jest taki sam: zaznaczanie rzeczy, które wiem, że będą wymagać powtórzenia. Ponadto przed wpisaniem kodu przeprowadzam globalne wyszukiwanie kodu źródłowego dla tego słowa kluczowego, które jest tak wybrane, aby normalnie nie pojawiało się nigdzie w kodzie. Jeśli zostanie znaleziony, wiem, że coś zapomniałem i mogę to naprawić.
Jeśli chodzi o dołączenie nazwy / podpisu programisty do komentarza, myślę, że to przesada, jeśli masz system kontroli wersji kodu źródłowego ( tak , prawda?). W takim przypadku jego funkcja obwiniania powie Ci, kto dodał komentarz, a dokładniej, kto ostatnio zarejestrował zmianę, która dotknęła komentarza. Na przykład w Visual Studio można to łatwo osiągnąć za pomocą funkcji „Adnotacja”, która znajduje się wśród funkcji kontroli źródła.