D言語入門記事 ~プロローグ~

アバター
tk-xleader
記事: 158
登録日時: 14年前
連絡を取る:

D言語入門記事 ~プロローグ~

投稿記事 by tk-xleader » 13年前

私自身がD言語のユーザーなのですが、信者の一人として布教記事でも書きますか(笑)

[1] 対象読者

C言語やJavaなど、Cライクな言語を経験したことがあって、D言語について興味がある人。
特にC言語の経験はあって欲しいです。それと、コマンドライン関連をある程度使えて欲しいです。

[2] D言語って何?

Wikipedia「D言語」 より転載。
 Digital Mars社のウォルター・ブライトによって開発された。C言語の後継を目指したものだが、マルチパラダイムプログラミング言語であり、オブジェクト指向プログラミングも可能である。
 事前・事後条件のチェックや不変条件のチェック、debug 識別子の導入など、プログラムのデバッグ・保守に対して重点的にサポートしている点もこの言語の特徴である。またコンパイラの作成を非常に重視しており、言語仕様そのものがコンパイラ側の効率を意識して作られている。これはC言語が幅広く普及した背景に処理系のポーティングの容易さがあったことを踏まえており、関連する解析ツールなどの開発環境までを含めて「言語の実用性」ととらえた現実的な考え方を反映している。
 要するに、C/C++のネイティブにおける次世代の言語を目指して開発された、C++のお株を奪うために開発された言語です。言語の実用性という観点が重要視されていて、デバッグや保守といったプログラムの開発で最も頭を悩まされる部分に重点的なサポートがなされています。
 そして、言語仕様そのものがコンパイラの開発のしやすさを意識されていて、C++に比べてコンパイラの実装が簡素なものになっているので、コンパイルが異常なまでに高速です。そして、安全なコードの範囲で強力なコードを書くことも出来ますし、よりコンピュータに近い低レベルなプログラミングもサポートしています。

 ただ、やはりユーザーの数が少なくて、C++ほどにライブラリが充実しているわけではないです。そもそも、標準ライブラリPhobos自体が不評ですから、ライブラリについてはあんまり期待できません。とはいっても、C言語のインターフェイスに直接アクセスできますから、C言語で書かれたオープンソースのライブラリはすべて、D言語から利用できます。それで何とかライブラリの絶対的な不足を補えるかもしれません…

[3] D言語開発環境の構築(Windows中心)

 まずは、D言語のコンパイラをインストールします。Digital Mars社のダウンロードページから、コンパイラ(DMD)をダウンロードします。Windowsなど、X86系のいくつかのOSでは、自動インストーラーが用意されてますから、それを使ってもいいと思います。
 そして、コンパイラのバイナリが存在するディレクトリを環境変数のPATHに追加します(Windowsの場合)。自動インストーラに従ってデフォルトのままでインストールした場合、そのときに追加するべきパスは次の2つです。

C:\D\dmd2\windows\bin
C:\D\dm\bin

要するに、(DMDをインストールしたパス)\dmd2\windows\bin と (DMDをインストールしたパス)\dm\bin の2つのディレクトリを実行可能パスに加えればOK。ここまでで、コンパイルできる環境は整いました。インストールできたかどうかをチェックする為に、テストコードをコンパイルして実行したいと思います。Windowsなら、メモ帳を開いて、次のプログラムコードを打ち込んで、「test.d」という名前で適当なディレクトリ(ここではD:\Workspace\ ということにします)に保存してください。

CODE:

import std.stdio;

void main(){
	writeln("Hello, world!!");
}
そして、コマンドプロンプトを開き、ソースファイルを保存したディレクトリ(下では「D:/Workspace/」となってますが、読者の操作に合わせてくださいね。)にカレントディレクトリを移し、「rdmd test.d」というコマンドを打ち込んで、コンパイル&実行してください。

CODE:

cd /d D:/Workspace/
rdmd test.d
このコマンドを打ち込むと、コンパイラが正常にインストールされていれば、

Hello, world!!

と出力されます。どうもうまくいかないという場合は、最初からやり直してみて、それでもうまくいかないのであれば、コメント欄で質問してください。

次の記事「Hello Worldと式(1)
最後に編集したユーザー tk-xleader on 2012年3月20日(火) 00:18 [ 編集 1 回目 ]

nil
記事: 428
登録日時: 13年前

Re: D言語入門記事 ~プロローグ~

投稿記事 by nil » 13年前

D言語は僕も時折使っていますが、

初心者に対する情報が少ないので
こういう入門記事はとてもありがたいです!!

C/C++との相違点なども取り上げてみてはいかがでしょう?

あと、VisualDを使えばコンパイル関係がだいぶ楽になりますよ

アバター
tk-xleader
記事: 158
登録日時: 14年前
連絡を取る:

Re: D言語入門記事 ~プロローグ~

投稿記事 by tk-xleader » 13年前

>涼雅さん

コメントありがとうございます。
涼雅 さんが書きました:C/C++との相違点なども取り上げてみてはいかがでしょう?
はい、そのつもりです。一応、対象読者はC言語経験者ですので…
涼雅 さんが書きました:VisualDを使えばコンパイル関係がだいぶ楽になりますよ
そうなんですが、IDEについては今回は触れないことにします。それと、Code::Blocksなんかもいいと思いますよ。