導入
- コンピューティングの歴史を通じて、 Dと呼ばれるプログラミング言語がいくつか存在しました。
- Walter Bright によって作成され、この記事で開発された言語。
- Dialog Manager言語 (別の記事で説明)。
- DTrace追跡システムの制御に使用される言語。
Wikibooks では、このテーマを扱った書籍「プログラミング D.」を提供しています。 |
D は命令型オブジェクト指向 プログラミング言語です。

歴史的
D 言語は、1999 年 12 月に Walter Bright によって彼の会社Digital Marsとともに作成され、 Cの後継として提示されているため、その名前が付けられています (C 言語自体は B 言語の後継であり、それ自体は A から派生したものではありません) C++ が作成される前、人々は長い間、C の後継言語がアルファベット順に D と呼ばれるか、BCPL の名前の文字順に P と呼ばれるかについて疑問に思っていました。 。
C++、Java (「ガベージ コレクション」と単純な継承の概念を共有)、Eiffel (コントラクト プログラミング パラダイムのため) など、多くの言語からインスピレーションを得ています。
起源
ウォルター ブライトは、処理能力を与える C または C++ の表現力によって、その使用が敏感になることに気づき、この言語を想像しました。
特に :
- コンパイラの作成とメンテナンスは困難です。
- 一般的にあまり理解されていない構文は、単純な無知または不注意によってバグを引き起こします。
これらの問題を克服するために、D 言語には C の洗練された構文があり、その効果の 1 つはコンパイルを高速化することです。したがって、言語に含まれる現代的な概念と組み合わせることで、生産性が向上します。
- 「言語が C++ の能力の90%を獲得できても、複雑さの10%しか獲得できなかったとしても、それだけの価値は十分にあります。」 ~ Walter Bright
D はバージョン 2.00 (2007 年 6 月 17 日以降) であり、若干の仕様変更が行われることがあります。これらの変換はウォルター ブライトによって独占的に実行されますが、彼は D を中心とするコミュニティからのコメントやリクエストを考慮します。

コンパイラ
公式コンパイラである dmd は、言語仕様に沿って開発されています。コードの一部 (フロントエンド) がオープンされているため、発生する可能性のある問題をすぐに修正したり、ベースを使用して独自のコンパイラを作成したりできます (実際、著者の夢の 1 つは、自分のもの以外のコンパイラが開花するのを見ることです)。 。現在、 Linux 、 Mac OS X、およびWindowsプラットフォーム用に存在します。
dmd フロントエンドと gcc バックエンドを組み合わせたGNUコンパイラー gdc が 2007 年まで開発されていました。
dmd フロントエンドと LLVM バックエンドを組み合わせたBSD ライセンスのコンパイラldc は、まだ開発中です。バージョン 1 では D 言語のほとんどをサポートしていますが、D 2.0 言語は正式にサポートしていません。
例
有名な「 Hello World 」、すべての言語の参考例:
2 番目の例:
//コマンドライン引数を表示する D プログラム。輸入標準標準デジタル; int main ( char [ ] [ ] args ) { foreach ( int i , char [ ] arg ; args ) { writefln ( "args[" , i , "] = '" , arg , "'" ) ; 0 を返します。 }
1.0 や 2.0 などの最近のバージョンでは、 char[]のエイリアスとしてstring型も受け入れます。

