< Sicherheitsaspekte | Entwicklungs-HOWTO | Was sind Lifters? >
Wie und wo anfangen? Wie und wo den Überblick finden? Hier sind einige Tipps versammelt, die dir erfahrene Entwickler mitgeben wollen.
1. grep
ist dein Freund
Der Stud.IP-Code besteht aus vielen, vielen Dateien. PHP, HTML, CSS, XML, XLST: Verschiedenste Typen sind vertreten und spielen auf relativ komplexe Art zusammen. Sie alle enthalten gute Beispiele, wichtige Hinweise zum Verständnis in Form von Kommentaren, Variablen- und Funktionsbenennungen. Es ist nicht notwendig, all diese Dateien anzuschauen, stattdessen empfiehlt sich eine gute alle UNIX-Weisheit als Führer durch den Dschungel: "grep
ist dein Freund."
Beispiel:
Du möchtest ein neues Log-Event einführen, d.h. eine bestimmte Aktion mitprotokollieren. Das geschieht über den Funktionsaufruf log_event(...)
. Also ist es eine gute Idee, nach solchen Funktionsaufrufen zu suchen und sich die Kontexte anzuschauen, in denen diese Funktion verwendet wird.
Eine Shell, d.h. ein Fenster, in dem du auf einer Kommandozeile Befehle eintippst, leistet hier schon Großes. Das UNIX-Kommando grep
kann Dateien nach Textfragmenten durchsuchen, z.B. Funktionsaufrufen wie log_event(...). Tippe dazu:
grep -rn "log_event(" *
grep
durchsucht nund im aktuellen Verzeichnis und allen Unterverzeichnissen alle Dateien nach Vorkommen des Strings "log_event(", also dem gewünschten Funktionsaufruf. Neben den Dateinamen, in denen der String auftaucht, wird auch die Zeilennummer mit ausgegeben.
2. mit find
Dateien finden
Bei den vielen Dateien in Stud.IP kann es auch vorkommen, dass man weis, dass eine Datei existiert, aber leider den Pfad zur Datei nicht findet. Hier hilft das Unix-Kommando find
weiter. Diesem muss ein Verzeichnis und ein Dateiname übergeben werden. Das folgende Beispiel zeigt, wie find
aufgerufen wird.
Angenommen, du willst wissen, wo die Datei Navigation.php im Stud.IP Verzeichnis liegt. Dazu öffnest du eine Shell im Stud.IP Hauptverzeichnis und rufst find
folgendermaßen auf:
find . -name Navigation.php
find
liefert alle Vorkommen dieser Datei zurück:
./lib/navigation/Navigation.php
(Stand: Juni 2016)
3. Was habe ich geändert?
Wenn man herausfinden will, welche Änderungen man am Quellcode seit dem letzten Commit durchgeführt hat, geht man einfach ins Stud.IP Hauptverzeichnis, öffnet eine Shell und gibt svn diff
ein. Alle Änderungen (Hinzufügen und Entfernen von Code) werden von svn nach Dateien getrennt aufgelistet.