Сохранение данных с шаблоном Factory?

Я все больше знаком с заводским шаблоном (вместе с шаблоном стратегии) ​​и тем большим преимуществом, которое может иметь этот шаблон. Однако я боролся со следующей ситуацией:

Раньше я бы сделал что-то вроде следующего, где есть класс менеджера, который будет строить и сохранять Автомобиль. Здесь нет внедрения зависимостей, и это плохая реализация, особенно при попытке модульного тестирования.

public class CarManager
{
    public static Car GetCarFromDatabase(int carId) { return new Car(); }

    public static void SaveCar(Car car) { }
}

Теперь я понимаю, как у меня могут быть разные заводы , которые производят для меня автомобили, будь то из базы данных или где-то еще! Это круто! Итак, вот мои вопросы:

Q1: Насколько я понимаю, Фабрики должны только строить объектов, это правильно? Если да, то как насчет моего второго вопроса?

Q2: Если я следую заводскому шаблону для создания своих объектов, как мне сохранять свои объекты? Есть ли другой шаблон для этого, или я не совсем понимаю шаблон Factory?

11
задан Faisal Feroz 27 October 2010 в 17:07
поделиться