gihyo.jp » 書籍案内 » D言語パーフェクトガイド

D言語パーフェクトガイド

[表紙]D言語パーフェクトガイド

2004年12月22日発売

オングス,杉山貴章・後藤大地 監修

B5判/256ページ/CD1枚

定価1,974円(本体1,880円)

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 コンパイルスイッチ一覧
G-CLOUD

ピックアップ

エンジニアパワーアップ講座 ~システム基盤を活用するための基礎知識~

イマドキのエンジニアに要求されるさまざまな知識や能力。これらを効率よくキャッチアップしていくヒントをいろいろな視点から取り上げます。

LinuxCon Japan/ Tokyo 2010の歩き方

9月開催「LinuxCon Japan/ Tokyo 2010」の見どころと楽しみ方を,メインスピーカーの皆さんに自ら紹介していただきましょう。

自分で考えた家が現実に!? ~「3DマイホームデザイナーLS3」で実現する,普請道楽のススメ

「3DマイホームデザイナーLS3」を使えば,パズル感覚の簡単操作で理想の住まいを立体的にシュミレートすることができます。

手軽に使える専用サーバ「さくらのマネージドサーバ」を徹底チェック

1台のサーバを占有して使うことができる「さくらのマネージドサーバ」に新たに加わった「Core 2 Duoプラン」の特徴と魅力をお伝えします。

gihyo.jp インフラエンジニア情報局

ネットワークやITにかかわるあらゆる業種で必要とされるインフラエンジニアに向けた情報や魅力を多角的に紹介します。

一行クイックアンケート

gihyo.jpで取り上げてほしいネタは?

※検索はページ右上の検索ボックスをご利用ください。

よく読まれている連載

Software is Beautiful

Windows 95/98などのチーフアーキテクトなどを務めたことで知られる中島聡氏による,エンジニアとして働き,生活していくうえで考えるべきこと,そしてそれを解決するヒントをお届けします。

DBアタマアカデミー

本連載ではRDBMSの内部のアーキテクチャやストレージのしくみについて解説することで,データベースについての理解を深め,現場で役立つ知識を身につけます。

目指せ!iPhoneアプリ開発エキスパート

2008年7月,日本での展開が始まりたくさんのユーザを獲得しているiPhone。その醍醐味の1つは,オリジナルアプリの開発でしょう。本連載では,iPhoneアプリ開発について,基礎から公開の手順まで,じっくり丁寧に解説します。

Jettyで始めるWebSocket超入門

WebSocketという新しいウェブの規格についての連載を,全4回の予定でお届けします。

手軽に使える専用サーバ「さくらのマネージドサーバ」を徹底チェック

「さくらのマネージドサーバ」は1台のサーバを占有して使うことができるホスティングサービスです。今回新たにCore 2 Duo搭載のサーバを利用する「Core 2 Duoプラン」の提供が始まりました。このサービスと新プランの特徴について,同社にお話を伺いました。

スタートアップ SVG

HTML5の盛り上がりとともに再び注目を集めるSVG。古い情報と新しい情報が混在して有益な情報が埋もれがちな状況を打破すべく,厳選した情報をお届けします。

ただのメモでは勿体ない!Evernoteに人生を記憶しよう

これからEvernoteをはじめたい,もっとEvernoteを使いこなしたいという方向けにEvernoteの基本的な使い方から応用技,情報整理術やライフログなどの具体的な運用方法まで解説していきます。

OpenCVで学ぶ画像認識

OpenCVという便利なツールを使いながら,プログラミング知識以外の専門知識を必要としない形で,画像認識技術について解説していきます。

Ruby on Railsで作られたプロジェクト管理ツールredMineを使ってみよう!

Ruby on Railsで作られたプロジェクト管理ツールredMineの,環境構築からセッティング,運用方法まで解説します。

Webデザイン最新トレンド ~イマドキUIのつくりかた

“今っぽいWebサイト”を作るには何が大切か? Webデザインのポイントと実際の作り方をサンプルをまじえて紹介します。

連載一覧

企業動向

[ 企業動向一覧 ]

最近のコメント