Если класс имеет конструктор, который принимает некоторый объект-значение в качестве параметра и использует его для инициализации.Как это должно реагировать, если этот объект нулевой?
class SomeClass
{
private SomeData _data;
public SomeClass(SomeValueObject obj)
{
_data = obj.Data;
}
}
Это один из примеров, но в целом: как должен действовать конструктор, если ему заданы недопустимые параметры и, следовательно, он не может выполнить построение правильно?Должен ли он просто вернуться без какой-либо инициализации?Установить параметры для некоторых значений по умолчанию?Бросить исключение?Что-то другое?
Я уверен, что ответ на этот вопрос "Это зависит", но есть ли лучшие практики и т.д.?