第3章 構造化とライティング・パターン
この作品はAIを使って翻訳されている。ご意見、ご感想をお待ちしている:translation-feedback@oreilly.com
新しいアイディアが成功するかどうかは、その有用性に加え、そのアイディアが役立とうとする人たちにどのように提示するかにかかっている。開発者がデザインパターンを理解し採用するためには、コンテキスト、状況、前提条件、そして重要な例に関する関連情報を提示する必要がある。この章は、特定のパターンを理解しようとする人にも、新しいパターンを導入しようとする人にも適用される。
デザインパターンの構造
パターン作成者は、その目的を定義できなければ、うまく パターンを作成し、公開することはできないだろう。同様に、開発者も背景や文脈がなければ、パターンを理解したり実装したりすることは困難である。
パターン作成者は、新しいパターンの設計、実装、目的の概要を説明しなければならない。著者はまず、新しいパターンを、以下の関係を確立する規則という形で提示する:
-
文脈
-
その中で生まれる力のシステム
-
これらの力を文脈の中で解決できるようにする構成
これを念頭に置いて、デザインパターンの構成要素をまとめてみよう。デザインパターンには以下の要素が必要であり、最初の5つの要素が最も重要である:
- パターン名
-
パターンの目的を代表するユニークな名前。
- 説明
-
そのパターンが何を達成するのに役立つかを簡単に説明する。
- コンテクストの概要
-
そのパターンが効果的にユーザのニーズに応えるコンテクスト。
- 問題提起
-
パターンの意図を理解するために、扱われている問題の記述。
- 解決策
-
ユーザの問題がどのように解決されるかを、ステップと認識のわかりやすいリストで説明すること。
- デザイン
-
パターンの設計と、特にパターンと対話するユーザの振る舞いについての記述。
- 実装
-
開発者がこのパターンをどのように実装するかの手引きである。
- イラスト
-
パターン内のクラスを視覚的に表現する(ダイアグラムなど)。
- 例
-
パターンを最小限の形で実装する。
- 前提条件
-
説明されているパターンの使用をサポートするために、他にどのようなパターンが必要だろうか?
- 関係
-
このパターンはどんなパターンに似ているだろうか?他のパターンに酷似しているか?
- 既知の使用法
-
そのパターンは野生で使われているのか?もしそうなら、どこで、どのように?
- ディスカッション
-
そのパターンのエキサイティングな利点についてのチームまたは著者の考え。
よく書かれたパターン
デザイン・パターンの構造と目的 を理解することは、なぜそのパターンが必要なのか、その理由をより深く理解するのに役立つ。また、自分自身のニーズに対してパターンを評価するのにも役立つ。
良いパターンは、理想的にはエンドユーザに相当量の参考資料を提供すべきである。パターンはまた、なぜそれが必要なのかの根拠も示すべきである。
パターンの概要を知るだけでは、日々遭遇するコードからパターンを特定するには不十分だ。私たちが見ているコードの断片が、決まったパターンに従っているのか、それとも偶然パターンに似ているのかは、必ずしも明らかではない。
もしあなたが目にしたコードがパターンを使っているのではないかと思ったら、そのコードのいくつかの側面を、既存の特定のパターンやパターン・セットに該当するものとして書き出してみることを検討しよう。コードが健全な原則、プラクティスに従っていて、それが偶然にも特定のパターンの規則と重なっているかもしれない。 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access