Podczas ręcznego sprawdzania nieznanego kodu (w celu przejrzenia lub zmodyfikowania) wydaje mi się, że mam trzy opcje.
- Odgórne odczytać kodu, wybierając każdy następny plik źródłowy tego, jak nazwa pliku fundamentalna wydaje. Zwykle czytam prawie wszystko. Niektóre pliki dwa razy.
- Szerokość pierwszego odczytu , gdzie mogę znaleźć i przeczytać wszystkie metody wywołującego z minimalnym zrozumieniem. Następnie przeczytaj wszystkie funkcje wywoływane przez tę funkcję i tak dalej. Mój mentalny stos ma tendencję do przepełnienia, jeśli wykonam kilka głębokich połączeń.
- Głębokość pierwszego odczytu , gdzie krok po kroku cały kod w debugger, niepewni, czy to zajmie 8 minut lub 8 godzin.
Po przeczytaniu wystarczającej ilości kodu, aby mieć dość solidne zrozumienie tego, co robi, często myślę, że przeczytałem 80% lub więcej bazy kodu, podczas gdy podstawowy kod to 20% lub mniej . Zmarnowałem dużo czasu.
Jakie narzędzia są przydatne, aby szybko poznać nieznany kod? Czy są jakieś narzędzia, które mogą dać „duży obraz” ścieżki krytycznego kodu i pozwolić mi przejść do szczegółów jednej części?