今まで知らなかった。これを知ってCLIやシェルの認識が正せそう。スクリプトの書き方も同様。
UNIX哲学
UNIX哲学
- 小さいものは美しい。
- 各プログラムが一つのことをうまくやるようにせよ。
- できる限り早く原型(プロトタイプ)を作れ。
- 効率よりも移植しやすさを選べ。
- 単純なテキストファイルにデータを格納せよ。
- ソフトウェアを梃子(てこ)として利用せよ。
- 効率と移植性を高めるためにシェルスクリプトを利用せよ。
- 拘束的なユーザーインターフェースは作るな。
- 全てのプログラムはフィルタとして振る舞うようにせよ。
UNIXプログラミング技法
番 | 規則 | 概要 |
---|---|---|
1 | モジュール性 | きれいなインターフェースで接続された簡潔な部品を書きましょう。 |
2 | 明瞭さ | 明瞭さは賢さよりも良いです。 |
3 | 構成 | 他のプログラムと接続できるようにプログラムを設計しましょう。 |
4 | 分離 | ポリシーとメカニズムを分離しましょう。エンジンとインターフェースを分離しましょう。 |
5 | 単純性 | 単純化された設計をしましょう。複雑さは必要な時だけ追加しましょう。 |
6 | 節約 | 大きなプログラムはどうしてもそれが必要な時だけ書きましょう。 |
7 | 透明性 | 透明性が確保できるような設計にしましょう。その方が検査とデバッグが楽になります。 |
8 | 頑健性 | 頑健性は透明性と単純性の産物です。 |
9 | 表現 | 知識はデータに織り込みましょう。そうすればプログラムロジックは単純で堅牢になります。 |
10 | 驚きが少ないこと | インターフェースを設計する時には、できるだけ驚きがないようにしましょう。 |
11 | 沈黙 | 特段驚くような事が無い場合、プログラムは何も言うべきではありません。 |
12 | 修理 | 修理できるものは修理しましょう。しかし、出来ない場合には、できるだけ騒ぎながら迅速に失敗しましょう。 |
13 | 経済 | プログラマの時間はコンピュータの時間と比べて高価です。 |
14 | 生成 | 可能な限り手作業を避けましょう。プログラムを使ってプログラムを書ける場合には、そうしましょう。 |
15 | 最適化 | 磨きをかける前にプロトタイプを作成しましょう。最適化は動作するようになった後にやりましょう。 |
16 | 多様性 | 一つの正しい方法を要求するものは全て信用しないようにしましょう。 |
17 | 拡張性 | 将来のことも考えて設計しましょう。それは、思ったよりも早く来ます。 |