Open2

ソフトウェア開発におけるデザイン(設計)パターンについて📝

まさぴょん🐱まさぴょん🐱

ソフトウェア開発におけるデザインパターンについて📝

ソフトウェア開発におけるデザインパターンまたは設計パターン(英: design pattern)とは、
過去のソフトウェア設計者が発見し編み出した設計ノウハウを蓄積し、名前をつけ、再利用しやすいように特定の規約に従ってカタログ化したものである。
パターン(pattern)とは、型紙(かたがみ)やひな形を意味する。
書籍『オブジェクト指向における再利用のためのデザインパターン』において、GoF (Gang of Four) と呼ばれる4人の共著者は、書籍の中で23種類のパターンを取り上げた。
引用元:デザインパターン (ソフトウェア)

コンピュータのプログラミングで、素人と達人の間では驚くほどの生産性の差があり、その差はかなりの部分が経験の違いからきている。
達人は、さまざまな難局を、何度も何度も耐え忍んで乗り切ってきている。
そのような達人たちが同じ問題に取り組んだ場合、典型的にはみな同じパターンの解決策に辿り着く。
これがデザインパターンである (GoF)。
それぞれのパターンは、プログラマの間で何度も繰り返し考え出されてきた。
したがって、それは最善の解決策ではないかもしれないが、その種の問題に対するトレードオフを考慮した、典型的な解決策ではある。
さらに、コストがかかるかもしれない問題解決を実際に行う前の先行調査として、大変役に立つ。パターンに名前が付いていることが重要である。
なぜなら、名前が付いていることで問題や解決策を記述したり、会話の中で取り上げたりすることができるようになるからである。
引用元:デザインパターン (ソフトウェア)

デザインパターンは主に以下の3つのカテゴリーに分類されます:

  1. 生成に関するパターン(Creational Patterns)
  2. 構造に関するパターン(Structural Patterns)
  3. 振る舞いに関するパターン(Behavioral Patterns)

https://ja.wikipedia.org/wiki/デザインパターン_(ソフトウェア)

https://qiita.com/victory1011/items/6d75da6c77d3e1884864

https://qiita.com/hukuryo/items/3bc62e65b402014918c3

https://qiita.com/Tadataka_Takahashi/items/76572f8873294acea53b