ホームページ >バックエンド開発 >PHPチュートリアル >PHP デザイン パターンを理解していますか_PHP チュートリアル

PHP デザイン パターンを理解していますか_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-15 13:28:16925ブラウズ

デザイン パターンは私に多くのメリットをもたらしました。JAVA には 20 以上のデザイン パターンがあり、PHP には 5 つの一般的なデザイン パターンがあります。PHP デザイン パターンのファクトリー パターンを詳しく見てみましょう。 『PHP デザイン パターン』という本は、ソフトウェア コミュニティにデザイン パターンを紹介しました。この本の著者は、Erich Gamma、Richard Helm、Ralph Johnson、John Vlissides Design (通称「Gang of Four」) です。提示されたデザイン パターンの背後にある中心となる概念は非常にシンプルです。

何年もソフトウェア開発を実践した後、Gamma と他の人たちは、建築家が家や建物を設計するのと同じように、バスルームをどこに配置するか、キッチンをどのように構築するかについてのテンプレートを開発できるように、固定されたデザインの特定のパターンを発見しました。これらのテンプレート、つまりデザイン パターンを使用すると、より良い建物をより速く設計できるようになります。同じ概念がソフトウェアにも当てはまります。デザイン パターンは、堅牢なソフトウェアをより迅速に開発するための有用な方法を表すだけでなく、大きなアイデアをわかりやすい言葉でカプセル化する方法も提供します。たとえば、疎結合を提供するメッセージング システムを作成していると言うかもしれませんし、Observer という名前のパターンを作成していると言うかもしれません。

より小さな例でパターンの価値を実証するのは非常に困難です。パターンは実際には大規模なコードベースで機能するため、これはやりすぎのように感じることがよくあります。この記事では大規模なアプリケーションについては説明しません。そのため、この記事で説明するコード自体ではなく、この例の原則を独自の大規模なアプリケーションに適用する方法を考える必要があります。これは、小規模なアプリケーションでパターンを使用するべきではないということではありません。優れたアプリケーションの多くは、小さなアプリケーションから始まり、大規模なアプリケーションに発展するため、このような堅固なコーディング手法に基づいて構築しない理由はありません。

PHP デザイン パターンとその有用性について理解したところで、PHP V5 で一般的に使用される 5 つのパターンを見てみましょう。

ファクトリー パターン

元々は『デザイン パターン』という本の中で、多くのデザイン パターンが疎結合の使用を奨励しています。この概念を理解するには、多くの開発者が大規模システムに取り組む際に経験する困難な道のりについて話すのが最善です。 1 つのコードを変更すると問題が発生する可能性があり、システムの他の部分 (これまでまったく関係がないと思われていた部分) で連鎖的な中断が発生する可能性があります。

問題は密結合です。システムの一部の関数とクラスは、システムの他の部分の関数とクラスの動作と構造に大きく依存します。これらのクラスが相互に通信できるようにする一連のパターンが必要ですが、インターロックを避けるためにクラスをしっかりと結び付けることは望ましくありません。

大規模システムでは、多くのコードがいくつかの主要なクラスに依存しています。これらのクラスを変更する必要がある場合、問題が発生する可能性があります。たとえば、ファイルから読み取る User クラスがあるとします。これをデータベースから読み取る別のクラスに変更したいと考えていますが、コードはすべてファイルから読み取る元のクラスを参照しています。このとき、ファクトリーモードを使用すると非常に便利です。

Factory Pattern は、オブジェクトを作成する特定のメソッドを持つクラスです。 new を直接使用せずに、ファクトリ クラスを使用してオブジェクトを作成できます。このようにすると、作成されるオブジェクトのタイプを変更する場合は、ファクトリを変更するだけで済みます。このファクトリを使用するすべてのコードは自動的に変更されます。

ファクトリークラスの例をリストに示します。この方程式のサーバー側は、データベースと、フィードバックの追加、フィードバックのリストの要求、および特定のフィードバックに関連する記事の取得を可能にする一連の PHP ページの 2 つの部分で構成されます。

リスト。Factory1.php

rree

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/446468.html技術記事デザイン パターンは私に多くのメリットをもたらしました。JAVA には 20 を超えるデザイン パターンがあり、PHP には 5 つの一般的なデザイン パターンがあります。PHP デザイン パターンのファクトリーを詳しく見てみましょう。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。