Download the PHP package jgswift/restructr without Composer
On this page you can find all versions of the php package jgswift/restructr. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package restructr
restructr
domain component foundation
Installation
Install via cli using composer:
Install via composer.json using composer:
Dependency
- php 5.5+
Description
restructr provides a set of foundational component abstractions in order to facilitate domain driven development in PHP. With no exception, the component foundation classes are composed at compile-time by traits, allowing a flexible approach that requires little imposition on an already existing domain model. restructr provides these domain driven abstractions from both array-first or object-first perspectives. restructr assumes very little about any given domains implementation and allows significant customization of existing functionality.
Component Abstractions
-
- A single identifiable component
-
- A collection of components
-
- An immutable (, , etc..)
-
- An immutable (, , etc..)
-
- An component that also accepts/serializes an inner
-
- A of non-accessable but iterable components.
-
- A of non-accessable but iterable domain data
As mentioned above, it is possible to include these concepts into an already existing domain without extending the provided abstractions. Nearly all abstractions are provided as composable traits that may be used or combined in any number of ways.
Trait Extensions
These traits are included to customize domain implementations in various ways. Some of these are foundational to the provided component abstractions, while others may be excluded or included on a per-domain basis.
-
- SPL implementation using local domain data
-
- SPL implementation using local domain data
-
- key restraints as defined by method
-
- implementation to retrieve local domain data
-
- SPL implementation using data
-
- implementation that disallows mutation (, )
-
- SPL implementation using local domain data
-
- SPL implementation using local domain data
-
- Object magic implementation based on trait
-
- property restraints as defined by method
-
- alias
-
- implementation that disallows property mutation (, )
-
- SPL implementation that uses RecursiveArrayIterator from SPL
-
- Minimal SPL implementation
-
- implementation that recursively converts domain data to an array