對於一個對設計模式一無所知的程式員來說,維護成本,無疑是一個致命的問題,所以從今開始,我要開始努力學習,設計模式,在這裡,記錄自己的學習成果 生產類 。 。 。 ...
對於一個對設計模式一無所知的程式員來說,維護成本,無疑是一個致命的問題,所以從今開始,我要開始努力學習,設計模式,在這裡,記錄自己的學習成果
生產類
- abstract class Oper 抽象類
- class Add 加
- class Sub 減
- class Mul 乘
- class Div 除
- class Operate 計算
abstract class Oper { public $num1 = 0; public $num2 = 0; abstract public function getResult(); }
class Add extends Oper { public function getResult(){ $result = $this->num1 +$this->num2; return $result; } }
。
。
。
class Div extends Oper { public function getResult(){ if($this->num2==0){ throw_exception('分母不能為零'); } $result = $this->num1 /$this->num2; return $result; } }
class Operate { public function oper($operate){ switch ($operate){ case '+': return new Add(); break; case '-': return new Sub(); break; case '*': return new Mul(); break; case '/': return new Div(); break; default: throw_exception('符號不支持'); break; } } }