php プロトタイプ モードの簡単な分析、php プロトタイプ モードの簡単な分析_PHP チュートリアル

WBOY
リリース: 2016-07-13 10:13:18
オリジナル
1029 人が閲覧しました

phpプロトタイプパターンの簡単な分析、phpプロトタイプの簡単な分析

プロトタイプモード:

プロトタイプ インスタンスを使用して、作成するオブジェクトのタイプを指定し、このプロトタイプをコピーして新しいオブジェクトを作成します。
アプリケーション シナリオ: このクラスには多くのリソース、パフォーマンス、セキュリティ要件があり、通常はファクトリ メソッドと組み合わせて使用​​されます。

コードをコピーします コードは次のとおりです:

/**
* プロトタイプモード
​*/
// 自身のクローンを作成するインターフェースを宣言します
インターフェース プロトタイプ {
関数コピー(); }
//製品自体のクローン作成操作を実装する必要があります
クラス学生がプロトタイプを実装する {
//簡単にするために、ここでは get set は使用しません
公立 $school;
公開 $major;
public $name;
パブリック関数 __construct($school, $major, $name) {
$this->school = $school;
$this->major = $major;
$this->name = $name;
}
パブリック関数 printInfo() {
printf("%s,%s,%sn", $this->school, $this->major, $this->name);
}
パブリック関数 copy() {
クローン $this を返します;
}
}
$stu1 = 新入生('清華大学', 'コンピュータ', '張三');
$stu1->printInfo();
$stu2 = $stu1->copy();
$stu2->name = '李思';
$stu2->printInfo();
?>

ここで、クラスに多数のメンバー変数がある場合、複数の新しいオブジェクトを外部で作成して値を 1 つずつ割り当てると、プロトタイプのコピーやコード自体のコピーが非効率になり、コードが冗長になり、エラーが発生しやすくなることがわかります。新しいオブジェクトに小さな変更を加えるのは別の問題です。


これで、デザインパターンの最初の部分であるクリエイティブパターンが完了しました。以下に構造設計パターンと動作​​設計パターンの 2 つの部分がありますが、これについては後ほど続きます。

http://www.bkjia.com/PHPjc/917027.htmlwww.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/917027.html技術記事 PHP プロトタイプ パターンの簡単な分析、PHP プロトタイプ プロトタイプ パターンの簡単な分析: プロトタイプ インスタンスを使用して、作成するオブジェクトの種類を指定し、このプロトタイプをコピーして新しいオブジェクトを作成します。 アプリケーション シナリオ: クラス リソース...
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート