プログラム編 前書き
プログラム編 前書き
本書「プログラム編」は、プログラミングを単なる「言語の書き方」としてではなく、
現実世界の課題を論理に分解し、設計し、実装し、運用するための知的技術体系
として扱う。
先行する「宇宙編」では、宇宙・自然・生命・進化・文明といった対象を
数によって記述するという、人類の根源的な知的試みを扱ってきた。
プログラム編は、その延長線上に位置する。
すなわち、
数と論理によって、現実世界の仕組みを人為的に再構成する方法
――それがプログラミングである。
プログラミングは「言語」ではない
多くの入門書は、C言語、Java、Python、JavaScriptといった
「言語名」から話を始める。
しかし実務において本当に重要なのは、次の点である。
- なぜその仕組みが必要なのか(要件)
- 何を保証しなければならないのか(制約)
- どこで壊れてはならないのか(安全性・信頼性)
- どうすれば長期運用できるのか(保守性)
プログラミング言語は、
それらを実現するために最後に選択される「道具」
にすぎない。
本書が扱う範囲
本書では、以下の領域を分断せず、
一続きの思考の流れとして扱う。
- コンピュータの動作原理(CPU・メモリ・OS)
- プログラミング言語の設計思想
- フリーズしない・壊れにくいコーディング
- 業務システムの要件定義と設計
- クライアント/サーバ・Web・組み込み・AI
- 官庁・金融・製造・医療・宇宙開発の実例
- COBOLに代表される古い言語と現代技術の接続
- オブジェクト指向という言語横断的概念
特定の流行やフレームワークに依存せず、
数十年単位で通用する技術者の思考基盤
を構築することを目的とする。
読者像
本書は、以下の読者を想定している。
- プログラミング初学者
- 独学で壁にぶつかった中級者
- 業務設計・要件定義に関わる技術者
- 情報処理技術者試験・技術者試験を目指す人
- 言語は書けるが設計に不安を感じている人
一方で、
「とりあえず動けばよい」「流行の技術だけを知りたい」
という目的には向かない。
本書は、
考え、設計し、説明できる技術者
になるための書である。