D言語パーフェクトガイド
2004年12月22日紙版発売
オングス,杉山貴章・後藤大地 監修
B5判/256ページ/CD1枚
定価2,068円(本体1,880円+税10%)
ISBN 4-7741-2208-4
ただいま弊社在庫はございません。
書籍の概要
この本の概要
D言語の全貌を,C/C++/Java/C#のソースコードと比較しながら,詳細に解説します。もちろんD言語のインストールとその設定を解説しているほか,DコンパイラやCygwin,Eclipse,eclipseDなどを収録したCD-ROMも添付されています。
こんな方におすすめ
- D言語を学びたい方
- C/C++/C#/Javaプログラマの方
D言語について
最近では,JavaやC#などがアプリケーション開発用のプログラミング言語として定着してきました。しかし,誰にでも使い易くという目的が優先されたその仕様対する不満の声も随所で聞こえています。また,実行環境がVMに依存する点も,一部で敬遠される理由のようです。
上記の理由でJavaやC#などを使わずにC/C++を使い続けているユーザも多く,特に古くからのベテランプログラマにその傾向は強いようです。そこでC/C++に変わるプログラミング言語として一部で注目を集めているのがD言語です。
D言語は位置づけとしてはCやC++の後継とされており,多くのプログラマが有用と考える機能をこれらの言語に付け加えたようなものになっています。具体的には,D言語はクラスやテンプレート,RTTI,Design By Contractなどの機能を備えています。一方で,C言語のプリプロセッサやC++の多重継承,C#やJavaでは可能な動的クラスロードなどの機能は除かれています。既存の言語のいい部分を残し不要な部分は削るというコンセプトの元に設計されたこの言語は,プログラマの間に徐々に浸透しつつあります。
目次
Chapter 1 Hello,”D Programming Language”.
Chapter 2 D言語の特徴
Chapter 3 Dコンパイラのインストール
- 3.1 Win32版のDコンパイラのインストール
- 3.1.1 Windows XPの場合
- 3.1.2 Windows NT/2000の場合
- 3.1.3 Winodws 95/98/Meの場合
- 3.2 Cygwinのインストールおよび設定
- 3.2.1 Cygwinインストール補説
- 3.3 Win32版Dコンパイラの使用
- 3.4 Linux版Dコンパイラのインストール
- 3.5 FreeBSD環境でのDコンパイラのインストール
- 3.5.1 Linuxバイナリ互換機能補説
- 3.6 C/C++開発環境(gcc)のインストール
- 3.6.1 Windowsの場合
- 3.6.2 Linuxの場合
- 3.6.3 FreeBSDの場合
Chapter 4 機能解説
- 4.1 データ型
- 4.1.1 基本データ型
- 4.1.2 プロパティ
- 4.1.3 非数NaN
- 4.1.4 虚数・複素数
- 4.1.5 typedef
- 4.1.6 alias
- 4.1.7 キャスト式
- 4.1.8 const属性
- 4.2 配列
- 4.2.1 配列の種類
- 4.2.2 配列へのデータセット
- 4.2.3 配列のスライシングとコピー
- 4.2.4 プロパティ
- 4.2.5 配列の連結演算子
- 4.2.6 連想配列
- 4.3 演算子
- 4.3.1 算術演算子
- 4.3.2 関係演算子
- 4.3.3 論理演算子
- 4.3.4 インクリメント演算子,デクリメント演算子
- 4.3.5 ビット演算子,シフト演算子
- 4.3.6 代入演算子
- 4.3.7 その他の演算子
- 4.3.8 条件演算子
- 4.3.9 演算子オーバーロード
- 4.4 制御構文
- 4.4.1 if文,while文,do-while文,for文
- 4.4.2 switch文
- 4.4.3 foreach文
- 4.4.4 goto文
- 4.5 モジュール
- 4.5.1 モジュール
- 4.5.2 import宣言
- 4.5.3 標準で利用できるモジュール
- 4.6 例外処理
- 4.6.1 例外処理(try文)
- 4.6.2 throw文
- 4.6.3 例外クラス
- 4.7 関数
- 4.7.1 関数の定義
- 4.7.2 関数オーバーロード
- 4.7.3 関数の引数
- 4.7.4 関数のネスト
- 4.7.5 関数のポインタ
- 4.7.6 デリゲート
- 4.7.7 関数リテラル
- 4.7.8 可変長引数
- 4.8 クラス
- 4.8.1 クラス定義
- 4.8.2 コンストラクタ
- 4.8.3 デストラクタ
- 4.8.4 静的メンバ
- 4.8.5 静的コンストラクタ/静的デストラクタ
- 4.8.6 仮想関数
- 4.8.7 継承
- 4.8.8 オーバーライド
- 4.8.9 override属性
- 4.8.10 スーパークラスの参照
- 4.8.11 抽象クラス
- 4.8.12 インタフェース
- 4.8.13 アクセス保護属性
- 4.8.14 クラスのプロパティ
- 4.8.15 演算子オーバーロード
- 4.8.16 関数呼び出し演算子のオーバーロード
- 4.8.17 配列演算子のオーバーロード
- 4.8.18 クラス不変条件
- 4.8.19 単体テスト
- 4.9 構造体/共用体/列挙体
- 4.9.1 構造体
- 4.9.2 共用体
- 4.9.3 構造体/共用体のプロパティ
- 4.9.4 無名構造体/無名共用体
- 4.9.5 列挙体
- 4.10 契約プログラミング
- 4.10.1 アサーション(assert)
- 4.10.2 Static Assert
- 4.10.3 事前条件/事後条件(in-out-body)
- 4.10.4 クラス不変条件(invariant)
- 4.11 テンプレート/ミックスイン
- 4.11.1 テンプレート
- 4.11.2 パラメータの特殊化
- 4.11.3 aliasパラメータ
- 4.11.4 テンプレートのプロパティ
- 4.11.5 ミックスイン(Mixin)
- 4.12 バージョン管理
- 4.12.1 version文
- 4.12.2 version属性
- 4.12.3 debug文
- 4.12.4 debug属性
- 4.12.5 static assert
- 4.12.6 単体テスト
- 4.13 その他の機能
- 4.13.1 auto属性
- 4.13.2 synchronized文
- 4.13.3 volatile文
- 4.13.4 プラグマ(pragma)
Chapter 5 サンプルプログラム
- 5.1 環境設定と実行方法
- 5.1.1 Windows環境での実行方法
- 5.1.2 LinuxおよびFreeBSD環境での実行方法
- 5.2 ファイル操作のサンプル
- 5.3 入出力のサンプル
- 5.4 ソケットのサンプル
- 5.5 スレッドのサンプル
- 5.6 圧縮/解凍のサンプル
Appendix
- A 統合開発環境 Eclipse+D言語開発プラグインeclipseD
- A.1 Winodws環境でのインストール
- A.2 Linux環境でのインストール
- A.3 FreeBSD環境でのインストール
- A.4 Eclipse+eclipseDの使用方法
- B コーディングスタイル
- B.1 空白/改行の入れ方
- B.2 コメントの挿入
- B.3 命名規約
- B.4 エイリアス
- B.5 宣言の記述
- B.6 演算子オーバーロード
- B.7 ハンガリアン記法
- C コンパイルスイッチ一覧