はじめに
この記事は「プリンシプルオブプログラミング 3年目までに身につけたい一生役立つ101の原理原則」を読んだ際に記した議事録です。
著作権の関係により、詳細には書きません。詳しい詳細を知りたい方はぜひ本書を読んでみてください。
プリンシプルオブプログラミングをPOPと訳します。
What : 名前がないものは見えない
ある人が、自分が長く住む町の図書館で植物図鑑を見ている時に、「ジョシュアツリー」という名前の木があることを初めて知りました。図鑑に写真入りで解説されているその木は、自分が長く住むこの町では、まったく見たことがありません。
しかし、図書館から自宅への帰り道、いたるところで「ジョシュアツリー」を発見します。『今まで1度も見たことがない』と思っていた木です。
この話が言いたいことは、「名前がないものは見えていない」と言うことです。名前を知る事で初めて認知することができて存在を知ります。オブジェクト指向も良い例ではないでしょうか。
Why : 名前を知る事で存在を知る
物事や概念に対しては、まず、名前がある(名前を知る)ことが前提です。名前のおかげでそれを認知することができ、人に伝えることができるからです。
特に、目に見えない、概念的なものについては、名前が重要です。名前を付けることで、初めて認知され、再利用できるようになるからです。
例えば、デザインパターンの最大の成果は、既にそこにあった設計ノウハウに名前を付け、再利用可能にしたことにあります。
How : ユビキタス言語を使用しよう
名前を付け、言葉を作り、チームで共有しましょう。
これには、「ユビキタス言語」を使用します。ユビキタス言語とは、その問題領域の各要素を正確に表現する、チームの共通言語のことです。共通言語ですから、チーム内で統一されていなければなりません。同じものを指しているなら、同じ言葉を使用します。亜種は混乱を招くので、許容してはいけません。
ユビキタス言語は、普段の会話で使用するだけでなく、コードにも使用しましょう。仕様もコードも統一的になり、どちらも理解しやすくなります。
また、ユビキタス言語は、常に洗練していきましょう。声に出してみたり、図に書いてみたりして、色々候補を考えながら、概念と言葉を洗練します。
終わりに
この記事ではプリンシプルオブプログラミング 3年目までに身につけたい一生役立つ101の原理原則の議事録を自分用に記しています。
この記事ではカバーしきれていない部分も多いので、是非本書を手にとって読んでみてください。
次回、「【POP99】セカンドシステム症候群」です。ぜひ、次の記事も読んでみてください。