Formatter

Formatter

Ein Formatter ist ein Programm, das Programmtext automatisch nach festen Regeln in eine einheitliche Form bringt – etwa Einrückungen, Zeilenumbrüche und Abstände. Am Inhalt des Programms ändert er nichts, nur an dessen Aussehen.

Programme werden von Menschen als Text geschrieben. Dieser Text muss nicht nur richtig sein, er soll auch lesbar sein. Wie weit eine Zeile eingerückt ist, wo ein Umbruch sitzt, ob nach einem Komma ein Leerzeichen steht: All das ist für den Computer meist gleichgültig, für den Leser aber nicht. Ein Formatter ist ein Hilfsprogramm, das genau diese äußere Form automatisch herstellt. Er liest den Text ein und schreibt ihn nach festen Regeln neu, ohne die Bedeutung zu verändern. Das Ergebnis sieht in einem ganzen Projekt überall gleich aus, egal wer die Zeile getippt hat.

Warum Teams über Einrückungen nicht mehr streiten

In einem Softwareprojekt arbeiten oft dutzende Menschen an denselben Dateien. Jeder hat eigene Angewohnheiten: der eine rückt mit zwei Leerzeichen ein, der andere mit vier. Ohne einheitliche Regeln entsteht ein Flickenteppich. Der Text wird schwerer zu lesen, und Lesbarkeit ist bei Programmen kein Luxus. Wer einen Fehler sucht, muss den Aufbau des Textes auf einen Blick erfassen können.

Dazu kommt ein praktisches Problem. Entwickler verwalten ihre Dateien in einer Versionsverwaltung, also einem System, das jede Änderung mitschreibt. Dort sieht man Zeile für Zeile, was sich verändert hat. Wenn jemand nebenbei die Einrückung von hundert Zeilen anpasst, gehen die eigentlich wichtigen Änderungen darin unter. Ein Formatter verhindert das, weil alle Beteiligten dieselbe Form erzeugen.

Der wohl größte Gewinn ist gesparte Zeit. Diskussionen über Klammern und Leerzeichen sind in der Branche berühmt und völlig unproduktiv. Legt ein Team einmal einen Formatter fest, ist die Frage entschieden. Man muss die Regeln nicht mögen, man muss sie nur nicht mehr verhandeln.

Vom Text zum Baum und zurück

Ein Formatter arbeitet nicht mit Suchen und Ersetzen. Er versteht die Struktur des Programms. Dazu zerlegt er den Text zuerst in seine kleinsten Bestandteile: Namen, Zahlen, Klammern, Operatoren. Aus diesen Bausteinen baut er dann eine baumartige Darstellung auf, die zeigt, was zu was gehört. Man kann sich das wie ein Satzdiagramm im Deutschunterricht vorstellen, in dem Haupt- und Nebensätze übereinander hängen.

Aus dieser Struktur schreibt das Werkzeug den Text vollständig neu. Dabei gilt eine Reihe von Regeln: Wie viele Leerzeichen pro Ebene? Wie lang darf eine Zeile maximal sein, üblich sind etwa 80 oder 100 Zeichen? Wo wird umgebrochen, wenn es nicht mehr passt? Weil der Formatter die Bedeutung kennt, kann er nichts kaputt machen. Kommentare und Texte in Anführungszeichen lässt er unangetastet.

Wichtig ist die Abgrenzung zu einem Linter. Ein Linter prüft ebenfalls Code, meldet aber inhaltliche Schwächen: eine nie benutzte Variable, eine gefährliche Konstruktion, einen wahrscheinlichen Fehler. Ein Formatter urteilt nie über den Inhalt. Er ordnet nur das Aussehen. Viele Teams setzen beides gemeinsam ein, weil sich die Aufgaben ergänzen.

Formatter in Editoren, Pipelines und KI-Werkzeugen

Wer programmiert, begegnet Formattern meist beim Speichern. Moderne Editoren rufen sie automatisch auf, sobald eine Datei gesichert wird. Bekannte Beispiele sind Prettier für Webentwicklung, Black für die Sprache Python und gofmt für die Sprache Go. Gerade gofmt gilt als Vorbild, weil es fast keine Einstellungen erlaubt und damit auch keine Sonderwünsche.

In Firmen läuft die Prüfung zusätzlich automatisiert. Bevor neuer Code übernommen wird, kontrolliert ein Server, ob die Formatierung stimmt. Weicht sie ab, wird die Änderung abgelehnt. Solche automatischen Abläufe heißen Pipelines, weil eine Prüfung nach der anderen durchlaufen wird.

Auch im Umfeld von KI spielen Formatter eine Rolle. Sprachmodelle erzeugen Programmtext, dessen Form schwanken kann. Ein nachgeschalteter Formatter glättet das Ergebnis, sodass generierter und handgeschriebener Code nicht mehr zu unterscheiden sind. Der Begriff taucht außerdem in anderer Bedeutung auf: In manchen KI-Bibliotheken heißt Formatter ein Bauteil, das Daten in eine feste Vorlage für die Anfrage an ein Modell einsetzt. Aus dem Zusammenhang wird meist klar, welche Variante gemeint ist.

Subscribe free. Unsubscribe the second it sucks.

High-signal news across AI, business, UX, and tech. Every morning.