У меня есть класс StreamCopyOperation
, который предоставляет мне такие вещи, как средняя скорость операции копирования и другую информацию.
Теперь у меня есть конструктор, который выглядит как
public StreamCopyOperation(Stream source, Stream target, int bufferSize, int updateInterval)
{
//Initialize values
}
и метод
public void CopyStream()
{
//Copy the streams, send the progress updates, etc...
}
Теперь я не знаю, должны ли все аргументы быть в конструкторе или потоки должны быть переданы в метод следующим образом:
public void CopyStream(Stream source, Stream target)
{
//Copy the streams, send the progress updates, etc...
}
иконструктор получает только размер буфера и пройденный интервал обновления.Или, может быть, все должно быть в методе CopyStream
.
Есть ли что-то вроде лучшей практики или это просто дизайнерское решение?