コンピュータプログラミングの概念・技法・モデル(Peter Van Roy Seif Haridi 羽永 洋 羽永 洋)|翔泳社の本
  1. ホーム >
  2. 書籍 >
  3. コンピュータプログラミングの概念・技法・モデル

コンピュータプログラミングの概念・技法・モデル



翻訳
原著

形式:
書籍
発売日:
ISBN:
9784798113463
定価:
9,020(本体8,200円+税10%)
仕様:
B5変・944ページ
カテゴリ:
プログラミング・開発
キーワード:
#プログラミング,#開発環境,#開発手法,#Web・アプリ開発

21世紀仕様のプロブラミングとは何か?

コンピュータサイエンスの基礎から高度な概念・技法・モデルまでじっくり学びながらオブジェクト指向言語・関数型言語・論理型言語というスタイルの違うプログラミングが同時に学習できます。これらをOz(オズ)というマルチパラダイムをサポートする言語を使い、オープンソースのMozart(モーツアルト)システムによって実際にプログラムを動かしながら学べる。包括的で体系だった知識を得ることができます。また、プログラムの意味論がわかりやすく学べる今まで日本になかった一冊です。まさにプロとして21世紀を生き抜くための必読書です。

第1章 プログラミング概念入門
1.1 計算器
1.2 変数
1.3 関数
1.4 リスト
1.5 リストについての関数
1.6 プログラムの正しさ
1.7 計算量
1.8 遅延計算
1.9 高階プログラミング
1.10 並列性
1.11 データフロー
1.12 明示的状態
1.13 オブジェクト
1.14 クラス
1.15 非決定性と時間
1.16 原子性
1.17 ここからどこへ行くのか?
1.18 練習問題

第I部 一般的計算モデル

第2章 宣言的計算モデル
2.1 実用的プログラミング言語の定義
2.2 単一代入格納域
2.3 核言語
2.4 核言語の意味
2.5 メモリ管理
2.6 核言語からの実用的言語へ
2.7 例外
2.8 進んだ話題
2.9 練習問題

第3章 宣言的プログラミング技法
3.1 宣言的とはどういうことか?
3.2 反復計算
3.3 再帰計算
3.4 再帰を用いるプログラミング
3.5 時間効率と空間効率
3.6 高階プログラミング
3.7 抽象データ型
3.8 宣言的でない必要物
3.9 小規模プログラム設計
3.10 練習問題

第4章 宣言的並列性
4.1 データ駆動型並列モデル
4.2 スレッドプログラミングの基本的技法
4.3 ストリーム
4.4 宣言的並列モデルを直接使うこと
4.5 遅延実行
4.6 甘いリアルタイムプログラミング
4.7 Haskell言語
4.8 宣言的プログラムの限界と拡張
4.9 進んだ話題
4.10 歴史の関する注記
4.11 練習問題

第5章 メッセージ伝達並列性
5.1 メッセージ伝達並列モデル
5.2 ポートオブジェクト
5.3 簡単なメッセージプロトコル
5.4 並列性のためのプログラム設計
5.5 リフト制御システム
5.6 メッセージ伝達モデルを直接使用すること
5.7 Erlang言語
5.8 進んだ話題
5.9 練習問題

第6章 明示的状態
6.1 状態とは何か?
6.2 状態とシステム構築
6.3 明示的状態を持つ宣言的モデル
6.4 データ抽象
6.5 状態ありコレクション
6.6 状態に関する推論
6.7 大規模プログラムの設計
6.8 ケーススタディ
6.9 進んだ話題
6.10 練習問題

第7章 オブジェクト指向プログラミング
7.1 継承
7.2 完全なデータ抽象としてのクラス
7.3 漸増的データ抽象としてのクラス
7.4 継承を使うプログラミング
7.5 他の計算モデルとの関係
7.6 オブジェクトシステムを実装すること
7.7 Java言語(直列部分)
7.8 能動的オブジェクト
7.9 練習問題

第8章 状態共有並列性
8.1 状態共有並列モデル
8.2 並列性を持つプログラミング
8.3 ロック
8.4 モニタ
8.5 トランザクション
8.6 Java言語(並列部分)
8.7 練習問題

第9章 関係プログラミング
9.1 関係計算モデル
9.2 別の例
9.3 論理型プログラミングとの関係
9.4 自然言語構文解析
9.5 文法インタプリタ
9.6 データベース
9.7 Prolog言語
9.8 練習問題

第II部 特殊化された計算モデル

第10章 グラフィカルユーザインタフェースプログラミング
10.1 宣言的/手続き的手法
10.2 宣言的/手続き的手法を使うこと
10.3 対話的学習ツールPrototyper
10.4 ケーススタディ
10.5 GUIツールを実装すること
10.6 練習問題

第11章 分散プログラミング
11.1 分散システムの分類
11.2 分散モデル
11.3 宣言的データの分散
11.4 状態の分散
11.5 ネットワークアウェアネス
11.6 共通分散プログラミングパターン
11.7 分散プロトコル
11.8 部分的失敗
11.9 セキュリティ
11.10 アプリケーションを構築すること
11.11 練習問題

第12章 制約プログラミング
12.1 伝播・探索法
12.2 プログラミング技法
12.3 制約ベース計算モデル
12.4 計算空間を定義し、使うこと
12.5 関係計算モデルを実装すること
12.6 練習問題

第III部 意味

第13章 言語意味
13.1 一般的計算モデル
13.2 宣言的並列性
13.3 8つの計算モデル
13.4 よくある抽象の意味
13.5 歴史に関する注記
13.6 練習問題

第IV部 付録

付録 A  Mozartシステム開発環境
A.1 対話的インタフェース
A.2 コマンドラインインタフェース

付録 B 基本データ型
B.1 数(整数、浮動小数点、文字)
B.2 リテラル(アトムと名前)
B.3 レコードとタプル
B.4 チャンク(制限付きレコード)
B.5 リスト
B.6 文字列
B.7 仮想文字列

付録 C 言語構文
C.1 対話的文
C.2 文と式
C.3 文と式のための非終端記号
C.4 演算子
C.5 キーワード
C.6 字句構文

付録D 一般的計算モデル
D.1 創造的拡張原則
D.2 核言語
D.3 概念
D.4 違う形の状態
D.5 その他の概念
D.6 階層的言語設計

本書は付属データの提供はございません。

お問い合わせ

内容についてのお問い合わせは、正誤表、追加情報をご確認後に、お送りいただくようお願いいたします。

正誤表、追加情報に掲載されていない書籍内容へのお問い合わせや
その他書籍に関するお問い合わせは、書籍のお問い合わせフォームからお送りください。

利用許諾に関するお問い合わせ

本書の書影(表紙画像)をご利用になりたい場合は書影許諾申請フォームから申請をお願いいたします。
書影(表紙画像)以外のご利用については、こちらからお問い合わせください。

追加情報はありません。

ご購入いただいた書籍の種類を選択してください。

書籍の刷数を選択してください。

刷数は奥付(書籍の最終ページ)に記載されています。

現在表示されている正誤表の対象書籍

書籍の種類:

書籍の刷数:

本書に誤りまたは不十分な記述がありました。下記のとおり訂正し、お詫び申し上げます。

対象の書籍は正誤表がありません。

最終更新日:2008年03月04日
発生刷 ページ数 書籍改訂刷 電子書籍訂正 内容 登録日
1刷 011
上から12行目
{Pascal 1} は 229 回呼ばれることになるが、・・・
{Pascal 1} は 229 回呼ばれることになるが、・・・
2007.11.12
1刷 028
上から11行目
(d) 1.3節で・・・
(d) 1.13節で・・・
2008.03.04
1刷 039、040
P.39:図2.4<br> P.40:形式的意味 上から12、15行目
記述的意味
表示的意味

3箇所訂正
2008.03.04
1刷 241
見出し
宣言的並列性
宣言的並行性

第4章以降、concurrent=並列、parallel=並行、と通例とは逆の訳語を採用していますが正しくはこの逆ですので、241ページ以降、「並行」と「並列」を入れ替えてお読みください。(※一部例外有)


241ページ 11行目
誤:「並列的(concurrent)」
正:「並行的(concurrent)」

349ページ「4.10歴史に関する注記」4行目
誤:「決定性並行プログラミング(determinate parallel programming)」
正:「決定性並列プログラミング(determinate parallel programming)」

349ページ 脚注
誤: 24「並行性」が並列性の意味で使われている.当時どちらの概念も「並行性」といわれた
正: 24「並列性」が並行性の意味で使われている.当時どちらの概念も「並列性」といわれた

※上記「並行」「並列」に関して、下記部分は例外となります。
347ページ 10行目
並列プログラミングに有用である・・・

752ページ 計算サーバ 2行目
内在する並列性を・・・
 
2008.03.04
1刷 346
表4.6
  供給駆動  要求駆動 
 明示的     テーブルフロー実行    遅延実行 
 暗黙的  ロック,モニタ,等  プログラムされたトリガ 
  供給駆動  要求駆動 
 暗黙的     テーブルフロー実行    遅延実行 
 明示的  ロック,モニタ,等  プログラムされたトリガ 
2008.03.04
1刷 378
下から11行目
5.2節に,並列パターンとして・・・
5.2.1節に,並列パターンとして・・・
2008.03.04

感想・レビュー

yuki obana さん

Oz/Mozartを用いたマルチパラダイムで取り扱う基礎的な概念や技法を扱う。低レイヤーの構造等を別途学習しておくとより効率のよい設計が行えることに気づけると思える。本書の内容は忠実に基礎的であるため目次で概ねの理解は出来る。edXではOzを用いたMOOCが2016年ごろにおいて度々開催されているが本書の内容を掻い摘んでいるので初学者であればまず母語で本書を読むことを推奨する。

jiroukaja さん

2014-06-30

長かった… Ozというprologの影響を強く受けたプログラミング言語で現在のプログラミング言語の概念・技法・モデルの概観を見ていこうという本。最後は流し読み。読んでよかった。

Sohei Takeno さん

2012-10-28

感想:http://d.hatena.ne.jp/Altech/20121028/1351422711