肉磨机/值对象

此包已弃用且不再维护。未建议替代包。

作为自定义域值对象基础的抽象值对象实现。

v0.0.0 2015-09-25 17:48 UTC

This package is not auto-updated.

Last update: 2020-01-24 16:00:30 UTC


README

Build Status Code Climate Test Coverage SensioLabsInsight Packagist Packagist License VersionEye

值对象

包含创建自定义域值对象构建块的抽象值对象包。

安装

打开终端,进入项目目录并执行以下命令以将此包添加到依赖项

$ composer require fleshgrinder/value-object

此命令要求您全局安装Composer,如Composer文档的安装章节中所述。

使用

源代码目录中有两个抽象类和一个接口,可用于构建满足项目需求的自定义域值对象。提供的ValueObject接口是一个头接口,它组合了一些接口以遵守每个值对象应提供的常见方法契约。建议实现此接口以实现完全自定义的行为。

SingleValueObject是构建仅由单个值表示的值对象的完美基础。只需扩展抽象类并实现必要的抽象方法即可。您还可以扩展SingleValueObjectTest并覆盖getInstancegetDefaultValuegetDefaultUnequalValue方法,以便对您的自定义单值值对象进行全面测试。

MultiValueObject是构建表示多个值的值对象的完美基础。但是,它仅实现了equals方法,以确保给定值是同一实例,并将进一步检查委托给扩展的子类。多值值对象很复杂,无法实现适合所有要求的抽象。您也可以简单地实现接口并自己实现实例检查。

网站链接

许可协议

MIT License