ISBN 9784274064067

UNIXという考え方 : その設計思想と哲学

UNIXという考え方 : その設計思想と哲学
出版社
オーム社
刊行
2001-02

概要

UNIX哲学の9定理を通じてソフトウェア設計の原則を体系化する

想定読者

プログラミング経験1〜3年で設計の判断軸を言語化したいエンジニア、およびシェルスクリプト・CLIツール設計の原則を求めるインフラ・SREエンジニア

こんな人には向いていない

  • 最新フレームワークやクラウドサービスの操作手順を求めている読者には内容が抽象的すぎる
  • UNIX/Linuxコマンドの実践的なリファレンスとして探している場合は対象外(コマンド構文の解説書ではない)
  • UNIX哲学を既知の前提として設計原則を深く応用したい上級者には議論の深度が不足する可能性がある

この本で身につくこと

  • UNIX哲学の9定理(一つのことを上手くやる・テキストを共通インターフェースにする等)を名前と意図で説明できる
  • 単一責任・直交性・パイプ合成の原則を自分のCLIツールやスクリプト設計に適用できる
  • シェルスクリプト設計の選択肢(オプション設計・サブコマンド構造等)をUNIX哲学の文脈で評価できる
  • 現代のマイクロサービスやコンテナ設計との思想的つながりを自分の言葉で説明できる
  • 技術的意思決定の場面で「直交性」「拡張性」「最小インターフェース」を判断軸として使える

ハイライト(外部からの言及)

UNIXは『OS』ではない。それは『考え方』である。誕生から30年を経て今もなお第一線で使われる古くて新しいOS、UNIXの秘密を解き明かす。 — 出典

本書のスコープを一文で示す。OSの操作習得ではなく思考様式の獲得を目的とする読者かどうかを30秒で判断させる

章立て

(公式情報未確認 — 出版社公式ページの目次が公開され次第、本セクションを更新予定)

関連記事 / 参考情報

学習のヒント

  • 9定理を読み終えたタイミングで、手元のシェルスクリプトや自作CLIツールを見渡し「どの定理が守られていてどれが破られているか」を棚卸しすると原則が体感として定着する
  • 2001年刊行だが原則論は色あせておらず、DockerやKubernetes・マイクロサービスの設計思想と照合しながら読むと「なぜこの設計になっているか」の理解が自然に深まる
  • 本書だけでは現代的な実装例が少ないと感じる場合、ko1nksm氏の「シェルスクリプトを学ぶ人のための新しいUNIX哲学」(Qiita)を補完教材として後追いすると原則の現代的解釈が得られる
  • 原著は156ページ程度で一気読みは容易だが、章ごとに自分のコードや設計で実例を探す「読み止まり型」で進めるほうが投資対効果が高い

前提知識

  • ターミナルでの基本的なファイル操作(ls / cd / cat 程度)の経験
  • 何かしらの言語で100行程度のプログラムを書いた経験(言語は問わない)
  • パイプ(|)とリダイレクト(>)の仕組みに一度触れたことがある

次に読む本

The Art of Unix Programming

本書の哲学を踏まえ、実際のUNIXプログラム設計と歴史的コンテキストをコード例とともに深く解説する発展書。原則の「なぜ」が腑に落ちる

Clean Architecture

UNIX哲学の「関心の分離・単一責任」をソフトウェアアーキテクチャとして体系化した現代版として対比読みが有効。本書の抽象論が具体的な設計指針に接続される

プログラミング作法

コードの書き方という具体レベルでUNIX哲学に通底する原則を扱う。本書で思想を得た後に実装習慣へ落とし込む橋渡しとして機能する

出版社による内容紹介

UNIXは『OS』ではない。それは『考え方』である。誕生から30年を経て今もなお第一線で使われる古くて新しいOS、UNIXの秘密を解き明かす。

この本がどの学習段階で役立つかは、 関連する ロードマップ から確認できます。

質問に答えるだけで、
あなたに合う専門書が見つかる

IT・デザイン・士業・医療・経理・教育・研究 ほか、あらゆる分野の専門書と 「読む順序」(学習ロードマップ)を収録。何を選べばいいか分からなくても、 いくつかの質問に答えるだけでたどり着けます。