made some refactoring
This commit is contained in:
23
resources/view/principles/open-closed.php
Normal file
23
resources/view/principles/open-closed.php
Normal file
@@ -0,0 +1,23 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @package: patterns
|
||||
* @author: Yevhen Odynets
|
||||
* @date: 2025-07-07
|
||||
* @time: 05:52
|
||||
*/
|
||||
|
||||
declare(strict_types = 1);
|
||||
|
||||
// Separate extensible behaviour behind an interface, and flip the dependencies
|
||||
|
||||
use Pattern\SOLID\OpenClosed\Figures\AreaCalculator;
|
||||
use Pattern\SOLID\OpenClosed\Figures\Circle;
|
||||
use Pattern\SOLID\OpenClosed\Figures\Square;
|
||||
|
||||
$circle = new Circle(3);
|
||||
$square = new Square(2, 5);
|
||||
$areaCalculator = new AreaCalculator;
|
||||
|
||||
/** @noinspection ForgottenDebugOutputInspection */
|
||||
dump('Circle(3)', $areaCalculator->calculate([$circle, $square]));
|
||||
Reference in New Issue
Block a user