Anmerkung des Übersetzers: Normalerweise ein Freitag-Artikel am Dienstagmorgen ... warum nicht?
Die meisten Menschen sind Visuals. Sie verwenden Bilder, um dem Problem auf den Grund zu gehen. Im Gegensatz dazu basieren die gängigen Programmiersprachen auf der Darstellung von Texten. Die resultierende Lücke zwischen Text und Grafiken wird mit ASCII-Bildern gefüllt, die mit Textzeichen gezeichnet und in den Programmquellcode eingefügt wurden. Ich verehre sie! Einmal habe ich auf Twitter geweint und sie haben mir viel mehr Beispiele geschickt, als ich erwartet hatte. Vielen Dank an alle Beteiligten. Dieses Thema lieferte einige hervorragende Beispiele, die ich gesammelt und in Kategorien eingeteilt habe. Für jedes Bild wird ein Link zum entsprechenden Repository angegeben.
Datenstrukturen
Eine der häufigsten Verwendungen von ASCII-Kunst im Code ist die Veranschaulichung der Datenstruktur.
Erstes Beispiel aus dem LLVM-Quellcode:
QuellcodePosition der Felder in der Datenstruktur in Jikes RVM:
QuellcodeDrehen Sie einen Baum in Musl:
QuellcodeZweiwege-Warteschlange in Rust:
QuellcodeSchnelle Compiler-Interna:
QuellcodeElementlayout im Malloc-Header:
QuellcodeZustandsautomaten
Javascript Profiling:
QuellcodeRPC in Cloud Spanner:
QuellcodeE / A-Stream-Zustände:
QuellcodeDomänenlogik
Kontrollfluss im dekompilierten NWScript-Programm:
QuellcodeECC Insides:
QuellcodeZahlenformatierung:
QuellcodeQuantenschaltung:
QuellcodeAusgleichen von Speicherverwaltungsaufgaben im Kernel des Betriebssystems:
QuellcodeTypkompatibilität (dies ist ein besonders beeindruckender Fall, da hier ASCII-Grafik Code ist!)
QuellcodeDBF-Dateiformat:
QuellcodeNachschlagetabelle für die Bildverarbeitung:
QuellcodeFarbfunktion Form:
QuellcodeURL-Struktur:
QuellcodeEin kurzer Hinweis zum Abbrechen von Vorgängen in Emacs:
QuellcodeAnmerkung des Übersetzers: Der Link enthält noch viele ähnliche DiagrammeGeometrie
Höhenkontrolle im Apollo-Bordcomputer (!!!):
QuellcodeSegmentierung des Bildes:
QuellcodeNethack-Bumerang-Flugbahnen:
QuellcodeZeichnen von Elementrändern in CSS:
QuellcodeQuadrantenbaum:
QuellcodeMaschinengeschwindigkeitsregelung:
QuellcodeScrollen von Webseiten:
QuellcodeIch hoffe es hat euch gefallen!
Zusätzliches Beispiel des Übersetzers:Diagramminterpolationswerte:
Quellcode