некоторые из моих коллег требуют избегать конструктора без параметров и его инициализация завершена. Потому что они говорят мне, что инициализация строкового свойства по умолчанию, например, быстро скрывает возможность выяснить источник ошибки.
Но стандартная инициализация объектов заранее предотвращает возникновение исключения NullReferenceException. И разве юнит-тесты не предотвращают эти «трудно найти» ошибки?
Так что же лучше всего делать в 1011 *?
Что если бы у меня был класс с 10 свойствами ? Должны ли свойства также инициализироваться через параметры конструктора, если я хочу избежать конструктора без параметров? Разве это не многословно?
Например, у меня есть этот класс, поэтому люди сказали мне, что я не должен делать инициализацию по умолчанию таким образом:
public class UserForCreationDto
{
public UserForCreationDto()
{
Username = "";
Email = "";
}
[Required]
[MaxLength(100)]
public string Username { get; set; }
[Required]
[MaxLength(100)]
public string Email { get; set; }
}