Das von facebook stammende Tool soll vor allem eine Hilfe zur Codevisualisierung und beim Refactoring sein. Kennt ihr diese anschaulichen Grafiken, die euren Festplatteninhalt visualisieren und auf vermeintliche Platzfresser aufmerksam machen (sowas in der Art)? Das macht pfff – nur eben auf Sourcecode zugeschnitten.
Was sagt facebook selbst dazu?
pfff is a set of tools and APIs to perform some static analysis, dynamic analysis, code visualizations, code navigations, or style-preserving source-to-source transformations such as refactorings on source code.
Finde ich – ohne es bis jetzt produktiv eingesetzt zu haben – zumindest mal eine nette Spielerei (…was ja auch der Namensbeisatz for Fun andeutet). Eingebaut ist eine sehr feine Möglichkeit, um Code schlau durchsuchen zu können und das Ergebnis zu visualisieren: sgrep. Ein Aufruf sieht dann bspw. so aus:
sgrep -e 'in_array(...) == true' *.php
Das Ganze ist in einem OCaml Dialekt geschrieben und unterstützt bisher vornehmlich PHP, aber auch Javascript, C, C++, Java, Lisp, Scheme, Haskell, Sql und TeX. Die Github-Seite findet ihr hier – von da habe ich auch die unten folgenden coolen Bilder entnommen.
Eine Antwort auf Codevisualisierung mit pfff: PHP Frontend For Fun