「D言語」の版間の差分

→‎D言語の特徴: C,C++との相違点を挙げるよりも、共通点を挙げたほうが早い。
(→‎D言語の特徴: C,C++との相違点を挙げるよりも、共通点を挙げたほうが早い。)
* ネイティブコンパイルされるため動作が速い - インタプリタや仮想機械上で動作する言語に比べて非常に高速です。
* 自動メモリ管理 - [[w:ガベージコレクション|ガベージコレクタ(GC)]]を搭載しているため、メモリの取得・開放に関してプログラマが気にする必要はありません。もちろん手動でメモリを管理する方法も用意されています。
* 保守性 - assert、[[w:単体テスト|unittest]]、invariant、debug, version による条件コンパイルなど、プログラムの保守性を高めるための機能があります。また、関数に定められる@safeなどのセキュリティレベルも保守性に貢献するかもしれません
* 可読性の高いテンプレート - C++と比べてテンプレートの構文がすっきりしていて仕様を把握するのも簡単です。
* 強力なCTFE(コンパイル時実行) - D言語はかなりの範囲の関数の結果等をコンパイル時に実行することができます。
* コンパイラの開発しやすさ - D言語はそのコンパイラの開発が簡単になるように設計されており、パースするのもC++とは比べ物にならない速さです。
 
上記のうち、C, C++ との共通点は、ネイティブコンパイルされることくらいでしょう。上記に列挙されてない共通点を挙げるなら、たとえば main 関数がD言語でも存在しておりプログラムの開始位置になる事など、なるべくC言語の知識を使いまわせるように設計されつつも、C言語のprintfのような古い関数は D言語ではwritef を使うなど、ところどころD言語は新しい関数に置き換えています。C++と違って cout の後ろの<nowiki><< </nowiki> の方向が <nowiki> >> </nowiki> だったかそれとも <nowiki> << </nowiki> だったかで悩む必要もD言語では無く、直感的にD言語は扱いやすく設計されています。
C, C++ との大きな違いをいくつか挙げます。
*
 
== コンパイラを動かしてみよう ==
18,892

回編集