Я столкнулся со следующей частью кода во время обзора кода.
Моя интуиция говорит мне, что это не следует за надлежащим ООП.
Я думаю, что вместо этого метод LoadObject должен возвратить новый объект SomeObject, вместо того, чтобы изменить тот передал в него. Хотя я не могу действительно найти надлежащее объяснение того, почему это лучше.
Мое решение лучше? и раз так почему? конкретно, какие принципы ООП или стандарты повреждаются в данном примере кода (если таковые имеются)?
public void someMethod()
{
...
var someObject = new SomeObject();
LoadSomeObject(reader,someObject);
}
private void LoadSomeObject(SqlDataReader reader, SomeObject someObject)
{
someObject.Id = reader.GetGuid(0);
}