하나. 개방형 및 폐쇄형 원칙:
기본 아이디어는 다음과 같습니다.
1. 개방형: 모듈의 동작은 개방적이고 확장을 지원하며 변경이 어렵지 않아야 합니다.
2.닫기: 모듈의 기능을 확장할 때 원래 프로그램 모듈에 대규모로 영향을 주거나 영향을 주어서는 안 됩니다.
2. 예:
<?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();
저작권 안내: 이 글은 해당 블로거의 원본 글이므로 블로거의 허락 없이 복제할 수 없습니다.
이상 내용의 측면을 포함하여 (7) 객체지향 디자인의 세 번째 원칙을 소개했습니다. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.