Как красивее сделать код
От: Аноним  
Дата: 02.08.13 06:08
Оценка:
Добрый день. Нужно иметь иерархию классов, кот принимает объект, трансформирует его и возвращает другой объект. Вот 2 моих решения

 public abstract class FirstAbstractBuilder<TBuildSource, TBuildResult>
    where TBuildSource : class
    where TBuildResult : class, new()
  {
    protected abstract void Build(TBuildSource buildSource, TBuildResult classBuildResult);
  }

  public abstract class SecondAbstractBuilder<TBuildSource, TBuildResult>
    where TBuildSource : class
    where TBuildResult : class, new()
  {
    protected TBuildSource Source { get; }
    protected TBuildResult Result { get; } 
    protected abstract void Build();
  }


Т.е. в первом случая я в каждый метод передаю параметры. А во втором случае я в конструкторе их запоминаю в поля и везде их использую
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.