Я ищу наилучший подход к решению следующей проблемы.
Мне бы хотелось, чтобы мнения людей о том, какой метод (ы) они использовали и почему, использовали следующий сценарий:
У меня есть Class
, который создается фабрикой, когда указан DateTime.
Какой подход я должен использовать?
статический класс "помощника": Class c = ClassHelper.GetClass(DateTime);
статический метод для типа экземпляра: Class c = Class.GetClass(DateTime);
статический класс / метод расширения: Class c = DateTime.GetClass();
В настоящее время я больше склоняюсь к классу статического помощника, поскольку я никогда не подходилиметь статические фабричные методы в классе экземпляра раньше, но мне кажется, имеет смысл делать это со статическим методом в классе?
Есть ли какие-то соображения, которые я должен учитывать, когда дело доходит до модульного тестированияили организация тестов?
В настоящее время я избегаю методов расширения, поскольку я прочитал, что методы расширения следует использовать с осторожностью, обычно если у вас нет доступа к источнику, который вы расширяете?
Ура,
Джеймс