51
D ist eine Sprache mit C-ähnlicher Syntax und statischer Typisierung.Es kombiniert auf pragmatische Weise Effizienz, Steuerung und Modellierungsleistung mit Sicherheit und Programmiererproduktivität.Convenience D ermöglicht das Schreiben großer Codefragmente ohne redundante Typangabe im Stil dynamischer Sprachen.Die statische Inferenz leitet jedoch Typen und andere Codeeigenschaften ab und bietet das Beste aus der statischen und der dynamischen Welt.Die automatische Speicherverwaltung sorgt für sicheren, einfachen und robusten Code.D unterstützt auch das Scoped Resource Management (auch bekannt als RAII-Idiom) und Scope-Anweisungen für deterministischen Transaktionscode, der einfach zu schreiben und zu lesen ist.Eingebaute lineare und assoziative Arrays, Slices und Bereiche machen die tägliche Programmierung für kleine und große Aufgaben einfach und angenehm.... Macht Das beste Paradigma ist, eine nicht auf Kosten anderer aufzuzwingen.D bietet klassischen Polymorphismus, Wertesemantik, Funktionsstil, Generika, generative Programmierung, Vertragsprogrammierung und mehr - alles harmonisch integriert.D bietet einen innovativen Ansatz für die gleichzeitige Verwendung von unveränderlichen Daten, die Weitergabe von Nachrichten, standardmäßig keine gemeinsame Nutzung und die kontrollierte gemeinsame Nutzung von Änderungen zwischen Threads.Von einfachen Skripten bis hin zu großen Projekten kann D den Anforderungen jeder Anwendung gerecht werden: Komponententests, Ausblenden von Informationen, verfeinerte Modularität, schnelle Kompilierung und präzise Schnittstellen.Effizienz D wird auf natürliche Weise zu effizientem nativem Code kompiliert.D ist so konzipiert, dass der "offensichtlichste" Code schnell und sicher ist.Gelegentlich muss eine Funktion möglicherweise die Grenzen der Typensicherheit für ultimative Geschwindigkeit und Kontrolle verlassen.Für solche seltenen Fälle bietet D native Zeiger, Typumwandlungen, Zugriff auf jede C-Funktion ohne dazwischenliegende Übersetzung und sogar Inline-Assembler.Die modularen Attribute @safe, @trusted und @system ermöglichen es dem Programmierer, die Sicherheits- / Effizienz-Kompromisse einer bestimmten Anwendung am besten zu bestimmen und den Compiler auf Konsistenz prüfen zu lassen.
d