デザインパターン

Commandパターン

命令に共通のインターフェイスを持たせてクラスに切るパターンですお。

<?php
interface Command{
    public function execute();
}
class CommandA implements Command{
    public function execute(){
        //なんか処理がいろいろありますお
    }
}
class CommandB implements Command{
    public function execute(){
        //なんか処理がry
    }
}
if($condition === COND_A){
    $command = new CommandA();
}elseif($condition === COND_B){
    $command = new CommandB();
}
$command->execute();//CommandA, CommandB, Commandほにゃらら は共通のインターフェイスを持つからexecuteで呼び出せますお!
?>

Webアプリで使われてるのだと、フロントコントローラーパターンとの組み合わせじゃないかと思いますお。 フロントコントローラーから呼び出されるControllerがこの場合でのCommandに当たりますお。

2ちゃん風の掲示板を作るなら、 test.php?mode=一つスレ見る&start=l50&thread=1211724956
modeで一つスレ見るControllerのexecuteを呼び出すお。あとはmode=スレ一覧見るなどなどありますおね。

WinProgとかは知らんので追記おながいしますお( ^ω^)おっおっおっ


トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2023-02-23 (木) 23:33:35