訳者まえがき 4 |
まえがき 7 |
教科書としての利用方法 10 |
第1部 人の活動としてのプログラミング 17 |
第1章 プログラムを読む 20 |
例題 22 |
コンピュータの側からの制約 23 |
言語の側からの制約 24 |
プログラマの側からの制約 27 |
歴史的痕跡 27 |
仕様 29 |
まとめ 30 |
設問 30 |
第2章 よいプログラムとは 33 |
仕様 35 |
スケジュール 38 |
適応力 39 |
効率 42 |
まとめ 45 |
設問 46 |
第3章 プログラミングの研究方法 48 |
内観 49 |
観察 52 |
実験 55 |
心理学的測定 59 |
行動科学のデータを借りる 62 |
まとめ 64 |
設問 65 |
第2部 社会活動としてのプログラミング 69 |
第4章 プログラミンググループ 71 |
公式的組織と非公式的組織 71 |
物理的環境と社会的組織 75 |
エラーとエゴ 77 |
エゴレス方式 82 |
プログラミング環境の構築と維持 87 |
まとめ 91 |
設問 92 |
第5章 プログラミングチーム 95 |
チームはどのようにして作られるか 96 |
目標の設定と受容 101 |
チームにおけるリーダーシップとチームリーダー 108 |
危機におけるチーム 116 |
まとめ 124 |
設問 125 |
第6章 プログラミングプロジェクト 129 |
変化を通じての安定性 130 |
作業成績の測定 135 |
プロジェクトの構造 142 |
大規模プロジェクトに共通する社会的問題 146 |
まとめ 151 |
設問 152 |
第3部 個人の活動としてのプログラミング 157 |
第7章 プログラミング作業の多様性 160 |
プログラミングにおけるアマとプロ 161 |
プログラマがしようとしていること 166 |
プログラミング作業の諸段階 173 |
まとめ 180 |
設問 181 |
第8章 性格上の要因 184 |
狂った爆撃機 185 |
性格の変化 187 |
性格の不変性 190 |
主要な性格特性 193 |
性格テスト 198 |
プログラマの性格検査 202 |
まとめ 204 |
設問 204 |
第9章 知能、ないし問題解決能力 207 |
心理的構え 208 |
問題解決の種々相 211 |
プログラミングにおける知能の諸側面 214 |
適性検査 219 |
プログラミングのための適性検査 220 |
まとめ 227 |
設問 228 |
第10章 動機づけ、訓練、経験 232 |
動機づけ 233 |
訓練、授業、および教育 237 |
学習を妨げるもの 242 |
プログラミングの学習方法 248 |
まとめ 255 |
設問 256 |
第4部 プログラミングの道具 259 |
第11章 プログラミング言語 262 |
プログラミング言語と自然言語 263 |
プログラミング言語の設計 269 |
まとめ 274 |
設問 274 |
第12章 プログラミング言語の設計原理 277 |
一様性 278 |
簡潔性 286 |
局所性および逐次性 292 |
伝統と革新 296 |
専用言語、多目的言語、おもちゃ言語 303 |
まとめ 307 |
設問 309 |
第13章 その他の道具 313 |
プログラムテストのための道具 314 |
オペレーティングシステム 320 |
TSSとバッチ 330 |
ドキュメンテーション 334 |
まとめ 344 |
設問 345 |
第5部 エピローグ 351 |
索引 367 |