コード例 #1
0
        return $this->title;
    }
}
echo tagins("html");
echo tagins("head");
echo tagins("/head");
echo tagins("body");
echo "BEGIN TESTING ABSTRACT FACTORY PATTERN";
echo tagins("br") . tagins("br");
echo 'testing OReillyBookFactory' . tagins("br");
$bookFactoryInstance = new OReillyBookFactory();
testConcreteFactory($bookFactoryInstance);
echo tagins("br");
echo 'testing SamsBookFactory' . tagins("br");
$bookFactoryInstance = new SamsBookFactory();
testConcreteFactory($bookFactoryInstance);
echo tagins("br");
echo "END TESTING ABSTRACT FACTORY PATTERN";
echo tagins("br");
echo tagins("/body");
echo tagins("/html");
function testConcreteFactory($bookFactoryInstance)
{
    $phpBookOne = $bookFactoryInstance->makePHPBook();
    echo 'first php Author: ' . $phpBookOne->getAuthor() . tagins("br");
    echo 'first php Title: ' . $phpBookOne->getTitle() . tagins("br");
    $phpBookTwo = $bookFactoryInstance->makePHPBook();
    echo 'second php Author: ' . $phpBookTwo->getAuthor() . tagins("br");
    echo 'second php Title: ' . $phpBookTwo->getTitle() . tagins("br");
    $mySqlBook = $bookFactoryInstance->makeMySQLBook();
    echo 'MySQL Author: ' . $mySqlBook->getAuthor() . tagins("br");
コード例 #2
0
ファイル: AbstractFactory.php プロジェクト: sepaev/domains
    function __construct()
    {
        $this->price = '20$';
    }
    function getPrice()
    {
        return $this->price;
    }
}
echo 'Начинаем тестировать паттерн Абстрактная фабрика<br><br>';
echo 'тестируем работу конкретной фабрику Apple<br>';
$factoryInstance = new AppleTechFactory();
testConcreteFactory($factoryInstance);
echo 'тестируем работу конкретной фабрику Samsung<br>';
$factoryInstance = new SamsungTechFactory();
testConcreteFactory($factoryInstance);
echo 'тестируем работу конкретной фабрику LG<br>';
$factoryInstance = new LGTechFactory();
testConcreteFactory($factoryInstance);
echo "Тесты завершены<br>";
function testConcreteFactory(AbstractTechFactory $factoryInstance)
{
    $lapTop = $factoryInstance->makeLapTop();
    echo 'Цена первого ноутбука: ' . $lapTop->getPrice() . "<br>";
    $lapTop = $factoryInstance->makeLapTop();
    echo 'Цена второго ноутбука: ' . $lapTop->getPrice() . "<br>";
    $phone = $factoryInstance->makePhone();
    echo 'Цена телефона: ' . $phone->getPrice() . "<br>";
    $SmartWatch = $factoryInstance->makeSmartWatch();
    echo 'Цена SmartWatch: ' . $SmartWatch->getPrice() . "<br><br>";
}