プリンシプルプログラミング プログラミング

【POP98】ジョシュアツリーの法則

はじめに

この記事は「プリンシプルオブプログラミング 3年目までに身につけたい一生役立つ101の原理原則」を読んだ際に記した議事録です。

著作権の関係により、詳細には書きません。詳しい詳細を知りたい方はぜひ本書を読んでみてください。

プリンシプルオブプログラミングをPOPと訳します。

What : 名前がないものは見えない

ある人が、自分が長く住む町の図書館で植物図鑑を見ている時に、「ジョシュアツリー」という名前の木があることを初めて知りました。図鑑に写真入りで解説されているその木は、自分が長く住むこの町では、まったく見たことがありません。

しかし、図書館から自宅への帰り道、いたるところで「ジョシュアツリー」を発見します。『今まで1度も見たことがない』と思っていた木です。

この話が言いたいことは、「名前がないものは見えていない」と言うことです。名前を知る事で初めて認知することができて存在を知ります。オブジェクト指向も良い例ではないでしょうか。

Why : 名前を知る事で存在を知る

物事や概念に対しては、まず、名前がある(名前を知る)ことが前提です。名前のおかげでそれを認知することができ、人に伝えることができるからです。

特に、目に見えない、概念的なものについては、名前が重要です。名前を付けることで、初めて認知され、再利用できるようになるからです。

例えば、デザインパターンの最大の成果は、既にそこにあった設計ノウハウに名前を付け、再利用可能にしたことにあります。

How : ユビキタス言語を使用しよう

名前を付け、言葉を作り、チームで共有しましょう。

これには、「ユビキタス言語」を使用します。ユビキタス言語とは、その問題領域の各要素を正確に表現する、チームの共通言語のことです。共通言語ですから、チーム内で統一されていなければなりません。同じものを指しているなら、同じ言葉を使用します。亜種は混乱を招くので、許容してはいけません。

ユビキタス言語は、普段の会話で使用するだけでなく、コードにも使用しましょう。仕様もコードも統一的になり、どちらも理解しやすくなります。

また、ユビキタス言語は、常に洗練していきましょう。声に出してみたり、図に書いてみたりして、色々候補を考えながら、概念と言葉を洗練します。

終わりに

この記事ではプリンシプルオブプログラミング 3年目までに身につけたい一生役立つ101の原理原則の議事録を自分用に記しています。

この記事ではカバーしきれていない部分も多いので、是非本書を手にとって読んでみてください。

次回、「【POP99】セカンドシステム症候群」です。ぜひ、次の記事も読んでみてください。

  • この記事を書いた人
  • 最新記事

ミッチー

小中高と野球漬けの毎日 ▶︎ 大学時に自分が何もできないことに気づき、プログラミング学習開始 ▶︎ PCは疎かったがめげずに継続 ▶︎ 受託で案件を頂きながら、オーダースーツ事業に、通販事業にも参戦 ▶︎ 東証一部Web系自社開発企業にエンジニアとして内定。

-プリンシプルプログラミング, プログラミング

© 2022 オミチャンネル Powered by AFFINGER5