This library supplies base classes for domain-driven development.
Most of the code in this library is originating from the awesome CSharpFunctionalExtensions project which you should definitely check out.
Differences between Razensoft.Domain (1.0.0) and CSharpFunctionalExtensions (v2.14.5):
- Removed legacy implementation of
ValueObject<T>
- Renamed
SimpleValueObject<T>
toValueObject<T>
- Renamed root namespace from
CSharpFunctionalExtensions
toRazensoft.Domain
- Added
AggregateRoot
andIDomainEvent
There are several ways to install this library into our project:
- Plain install: Clone or download this repository and put it somewhere in your Unity project
- Unity Package Manager (UPM): Add the following line to Packages/manifest.json:
"com.razensoft.domain": "https://github.com/Razenpok/Razensoft.Domain.git?path=src/Razensoft.Domain#1.0.0",
- OpenUPM: After installing openupm-cli, run the following command:
openupm add com.razensoft.domain
A big thanks to the project author, Vladimir Khorikov, and to all of the contributors of the original project. Again, don't forget to check it out!