Skip to Content
Domain-Driven Design in PHP
book

Domain-Driven Design in PHP

by Keyvan Akbary, Carlos Buenosvinos, Christian Soronellas
June 2017
Intermediate to advanced
394 pages
8h 52m
English
Packt Publishing
Content preview from Domain-Driven Design in PHP

Design Aggregates Based in Business True Invariants

First of all, what's an invariant? An invariant is a rule that must be true and consistent during code execution. For example, a stack is a LIFO (Last In, First Out) data structure that we can push items into and pop items out of. We can also ask how many items are inside of the stack; this is what's called the size of the stack. Consider a pure PHP implementation without using any specific PHP array functions such as array_pop:

class Stack {       private $data;    public function __construct()    {        $this->data = [];    }    public function push($value)    {        $this->data[] = $value;    }    public function size()    {        $size = 0;        for ($i = 0; $i < count($this->data); $i++) {            $size++;        }        return $size;    }    /** * @return ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

PHP Web Services

PHP Web Services

Lorna Jane Mitchell
PHP Microservices

PHP Microservices

Pablo Solar Vilariño, Carlos Pérez Sánchez

Publisher Resources

ISBN: 9781787284944