Niezależnie od tego, czy zachowujemy nieznany kod, czy sprawdzamy szczegóły implementacji modułu Apache, może pomóc, jeśli szybko przejdziemy przez kod i zbudujemy przegląd tego, co mamy ". ponowne spojrzenie. Grep spełnia większość moich codziennych potrzeb, ale są pewne przypadki, w których po prostu tego nie robi.Lista funkcji C/C++ (Analiza kodu w systemie Unix)
Oto typowy przykład, w jaki sposób może pomóc. Aby znaleźć definicję funkcji PHP Jestem zainteresowany mogę wpisać w linii poleceń:
grep -r "function myfunc" .
To może być przystosowana bardzo szybko do C lub C++, jeśli wiemy, typ zwracany, ale rzeczy stają się bardziej skomplikowany jeśli, powiedzmy, chcę wymienić każdą metodę, że moja klasa stanowi:
grep "function " ./src/mine.class.php
ponieważ nie ma jednego słowa kluczowego, które oznacza funkcję lub metodę w C++, a ponieważ jest ogólnie bardziej złożona składnia, myślę, że trzeba rodzaj statycznego narzędzia do analizy kodu, inteligentne użycie preprocesora C lub ślepa wiara, że koder postępuje zgodnie ze ścisłymi wytycznymi dotyczącymi kodu (liczba białych znaków, pozycja curl itp.), aby uzyskać tego rodzaju wyniki.
Co byś polecił?
+1 Należy również włączyć opcję generującą wynik kodu źródłowego w HTML ("PRZEGLĄDARKA SOURCE"). Powstały kod będzie zawierał hiperłącza, dzięki którym nawigacja po kodzie źródłowym stanie się prosta. –
+1 Właśnie zacząłem używać Doxygen do generowania diagramów za pomocą GraphViz, aby pomóc mi zapamiętać przepływ danych. –