Sądzę, że dobrym miejscem do rozpoczęcia (jeśli nie widzisz nic oczywistego) byłoby „debugowanie”. Jeśli nie widzisz możliwych problemów od samego początku, dobrym miejscem na początek jest sporządzenie małej listy wartości testowych. Dobre wartości to „szczęśliwa ścieżka” (normalna) wartość, „zero” lub „pusta” wartość, wartości null, bardzo mała wartość (ciąg 1 znaków, int 1 itd.), Bardzo duża lub bardzo długa wartość i „dziwne” wartości specyficzne dla typu (np. znaki Unicode dla ciągów, liczby ujemne dla liczb całkowitych itp.). Nie zaszkodzi tu wspomnieć, że normalnie piszesz testy jednostkowe przy użyciu tych wartości do testowania kodu, a po prostu uruchamiasz je w celu weryfikacji funkcji.
Zacznij od przejścia z wartościami szczęśliwej ścieżki. W przypadku funkcji dodatkowej możesz zacząć od 3 lub 4. Zbadaj każdą linię pod kątem literówek i błędów logicznych, śledząc wartości zmiennych lokalnych w miarę upływu czasu. Mam nadzieję, że znajdziesz kilka błędów. Kiedy skończysz ze szczęśliwą ścieżką, będziesz lepiej wyczuwał kod i mam nadzieję, że poczujesz się mniej przytłoczony - powiedz więc coś w stylu: „Teraz, gdy lepiej rozumiem, co robi ten kod, jestem cofając się i przyglądając się temu, „to po prostu rób to - szukając rzeczy, które wyróżniają się jako rzeczy, które zrobiłbyś inaczej (złe decyzje projektowe, źle nazwane zmienne, badaj możliwe błędy itp.).
Jeśli to cię nigdzie nie prowadzi lub masz wrażenie, że zabrakło Ci rzeczy do powiedzenia, wróć do listy wartości testowych i przejrzyj ją ponownie z nową, która Twoim zdaniem może powodować problemy.
To cię przynajmniej uruchomi.