When I am writing a builder, if the entity I am building contains value objects, what is the best way to deal with that?
Should I have a method called something like With_MyvalueObject(IMyValueObject $vo) and simply set the VO that way - obviously this technique requires that the value object exists first so I can pass it as an argument. Or should I make basic than that and take in values to create the value object within the builder?