Ein Einstieg in D

Die nächste Generation von C heißt D.

D ist eine seit 1999 von Walter Bright entwickelte Programmiersprache mit objektorientierten, imperativen sowie deklarativen Sprachelementen. Die Programmiersprache D wurde am 3. Januar 2007 in der stabilen Version 1.0 veröffentlicht.[7] Sie lehnt sich äußerlich stark an C++ an, jedoch ohne vollständige sprachliche Kompatibilität dazu. Aktuell liegt und die Version 2.096 vor.

ProgrammierungBlogThema

Am Anfang war das C

Walter Bright hat die Version 1.0 seiner objektorientierten Programmiersprache Dfertiggestellt. Damit steht Programmierern nach bald siebenjähriger Entwicklungsdauer eine Sprache zur freien Verfügung, die die Stärken von C++ mit denen von Java und C# vereinen soll – ohne historischen Ballast.

D verspricht hohe Performance, sparsamen Umgang mit Ressourcen sowie gute Les- und Wartbarkeit durch leicht verständlichen und zugleich kompakten Code. Dabei kommt D zugute, dass bei der Implementierung keine Notwendigkeit bestand, mit C oder C++ syntaxkompatibel zu bleiben. Um den Compilerbau zu vereinfachen, haben sich die D-Entwickler für eine kontextfreie Syntax entschieden. Das erlaubt das Parsen des Quellcodes, ohne die Semantik der Symbole berücksichtigen zu müssen.

Und noch etwas verschlankt den D-Parser: der Wegfall des von C und C++ bekannten Präprozessors. An die Stelle von Makros für Konstanten und Funktionen treten konstante Variablen und einfache Funktionen. Dies führt zu einer konsistenteren Syntax. Auch die Trennung des Quelltextes in Header- und Quelldateien ist nicht mehr notwendig.

Verwandtschaft

Wer von C, C++, C# oder Java kommt, muss sich dennoch nicht auf eine komplett neue Sprache einstellen. Die D-Syntax lehnt sich am ehesten an C++ an – ohne das Kreuz der Mehrfachvererbung. Delegaten erlauben den indirekten Aufruf von Methoden, freie Funktionen lockern das Korsett objektorientierter Programmierung hin in Richtung klassischer C-Programmierung, Templates gestatten die Definition von Klassen mit generischen Typen. Unit-Tests helfen den Code fehlerfrei zu bekommen. Design by Contract (DBC) sorgt mit Vor- und Nachbedingungen in Funktionen und Methoden für ein besseres Zusammenspiel der Einzelteile eines Programms. Die Phobos genannte Laufzeitbibliothek bringt eine Fülle häufig benötigter Routinen mit, etwa für Dateizugriffe, Datumskonvertierungen, Gleitkommaarithmetik, reguläre Ausdrücke, Socket-Kommunikation oder Thread-Programmierung.