(七)物件導向的設計原則之三

WBOY
發布: 2016-07-30 13:32:00
原創
938 人瀏覽過

一. 開放與封閉原則:
其基本的想法是:
1.Open:模組的行為必須是開放的、支持擴展的而不是難於改變的。
2.Closed:在對模組的功能進行擴展時,不應該影響或大規模地影響原有的程式模組。

二.例:

<?php
interface process{
    public function process();
}

//播放器的编码
class playerEncode implements process{
    public function process(){
        echo "encode\r\n";
    }
}

class playerOutput implements process{
    public function process(){
        echo "output\r\n";
    }
}

//调度管理器
class playProcess{
    private $message = null;
    public function __construct(){

    }
    public function callBack(event $event){
        $this->message= $event->click();
        if ($this->message instanceof process){
            $this->message->process();
        }
    }
}

//播放器的事件处理
class mp4{
    public function work(){
        $playProcess = new playProcess();
        $playProcess->callBack(new event('encode'));
        $playProcess->callBack(new event('output'));
    }
}

//事件处理类
class event{
    private $m;

    public function __construct($me){
        $this->m = $me;
    }

    public function click(){
        switch($this->m){
            case 'encode':
                return new playerEncode();
                break;
            case 'output':
                return new playerOutput();
                break;
        }
    }
}

$mp4 = new mp4();
$mp4->work();
登入後複製
三.其它:
1.    在設計上充分應用「抽象」與「封裝」的想法。
a.    找到「變動因素」將之封裝。
b.    「同樣」的變動因素應封裝在「同一個」物件中。
2.    在系統功能程式實現上應用介面導向的程式設計。
a.    當需求改變時可提供新類別以適應變化。
b.    面向介面要求功能類別實作接口,物件聲明為介面類型。

版權聲明:本文為部落客原創文章,未經部落客允許不得轉載。

以上就介紹了(七)物件導向的設計原則之三,包括了方面的內容,希望對PHP教程有興趣的朋友有所幫助。

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板