Zum Abschätzen der Komplexität eines Software-Projektes ist es von Vorteil, die Anzahl der Code-Zeilen (Lines of Code) zu bestimmen. Dazu gibt es verschiedene Möglichkeiten:
wc
Eine sehr einfache Variante ist der Konsolenbefehl wc
(word count). Um diesen auf alle Dateien eines Verzeichnisses anzuwenden, kann folgende Befehlszeile verwendet werden:
find . \( -iname '*.[ch]' -o -iname '*.php' -o -iname '*.pl' \) -exec wc -l {} + | sort -n
Dieser durchsucht *.c
, *.h
, *.php
und *.pl
Dateien im aktuellen Verzeichnis, zählt die enthaltenen Codezeilen und gibt eine sortierte Dateiliste aus.
cloc
Eine weitere Möglichkeit ist die Verwendung von cloc
. cloc
lässt sich bequem über HomeBrew installieren:
brew install cloc
Dieser Befehl kann auf die Dateien von Verzeichnissen angewendet werden:
cloc ./src ./plugins ./tests
Die Ausgabe ist eine Liste von Dateitypen mit den entsprechenden Zahlen:
48 text files.
41 unique files.
8 files ignored.
github.com/AlDanial/cloc v 1.99 T=0.04 s (1054.9 files/s, 189646.8 lines/s)
-------------------------------------------------------------------------------
Language files blank comment code
-------------------------------------------------------------------------------
Python 28 1519 728 4659
reStructuredText 6 102 20 203
YAML 2 9 2 75
Bourne Shell 3 6 0 17
Text 1 0 0 11
make 1 4 6 10
-------------------------------------------------------------------------------
SUM: 41 1640 756 4975
-------------------------------------------------------------------------------
Die Dokumentation bietet eine Menge an Optionen, um bestimmte Verzeichnisse oder Datentypen einzubinden oder auszuschließen.
Foto von Joan Gamell auf Unsplash
Leave a Reply