アプリケーションの新しい機能を発見しようと試み続けると、提案するソリューションが以前に実装したものと非常に似ていることに気づきましたか?あなたがプログラマーであれば (プログラマーを始めてまだ日が浅いとしても)、おそらく「はい」と答えたでしょう。ソフトウェア開発中に新たに発見された問題を解決するために古いコードを使用しているようです。あなたのソリューションは基本原則であり、あなただけでなくすべてのプロの開発者が広く繰り返すことができる方法であることに気づいたかもしれません。
実際、プログラミング上で多くの問題が繰り返し発生し、これらの問題を解決するための基本的な方法 (または設計パターン) が多数登場しています。デザイン パターンは、本物で信頼できるデザインを使用してコードを編成する方法を教えるテンプレートです。
デザインパターンの歴史
「デザインパターン」という言葉は、もともと建築の分野で使われた言葉です。 Christopher Alexander は 1977 年の著書『A Pattern Language: Towns/Building/Construction』の中で、いくつかの一般的な建築設計の問題について説明し、既存のよく知られたパターンのコレクションを使用して新しい効果的な設計を開始する方法を説明しています。 Alexander の視点はソフトウェア開発にもうまく反映されており、既存のコンポーネントを使用して新しいソリューションを構築することについては長期的なコンセンサスがあります。
すべてのデザイン パターンには、名前、問題ステートメント、解決策などの共通の特徴があります。
1. デザイン パターンの特定は、他のプログラマがあまり深く勉強しなくてもコードの目的をすぐに理解できるため、重要です (少なくともこの特定を通じて、プログラマはこのパターンに精通します)。 ?
2. 問題の説明は、このモデルの適用分野を説明するために使用されます。 ?
3. ソリューションでは、このモデルの実行について説明します。設計パターンについて十分に議論するには、モデルを使用する利点と欠点が含まれている必要があります。 ?
拡大する