170 похожих чатов

Ребят, добрый день. Паттерн фабричный метод предполагает создание общей фабрики

с методом без параметров который вернет интерфейс общий интерфейс "продукта" и дальнейшее создание фабрики на каждую реализацию продукта, но что если одна из реализаций этого продукта требует через конструктор какой-то параметр? Как мне этот параметр туда впихнуть(передать), если создавая фабрику для данного продукта она наследует метод без параметров?

10 ответов

10 просмотров

А откуда параметр браться должен? По идее потребитель ж не знает, про конкретный тип, он и про параметр не знает

Vazovsk1y- Автор вопроса
Oleg Safonov
А откуда параметр браться должен? По идее потребит...

Параметр берется из рантайма, есть коллекция определенных объектов, на основе этих объектов нужно создать другие объекты предварительно проведя определенные манипуляции перед созданием. Т.е, кнопку нажали, побежал цикл где каждый объект из имеющийся коллекции должен передаваться, а возвращаться должен объект который на его основе сконструирован.(это как бы мне хотелось, но могу ошибаться в правильности выбора паттерна и возможно есть иные способы для решения данной проблемы).

Vazovsk1y- Автор вопроса

>создание общей фабрики с методом без параметров С чего ты взял что у фабрики методы не могут иметь параметр?

Vazovsk1y- Автор вопроса
Andrew Shurunov
>создание общей фабрики с методом без параметров С...

Все примеры которые я видел были непараметризованные методы ISomehting CreateSomething().

Vazovsk1y
Все примеры которые я видел были непараметризованн...

Ну ты попробуй, зачем ты пример используешь как единственно верную инстанцию) Пример - он как в школе. Даёт базу для того, чтобы ты сделал на её основе что-то своё

Vazovsk1y- Автор вопроса

ViewModel точно за интерфейсом нужно прятать?

Похожие вопросы

Обсуждают сегодня

ого, прикольно, а что пишешь?
CodWiz | Серёжа by CodWiz
32
а почему бы не поведать миру эти дополнения, сделав их по сути стандартными для ide ?
Mixail Frolov
26
А что за прикол,типа тут я никого не найду получается?
🥀
17
А как ребята типа теле2 зашли? У них же пополнение баланса моментальное
Alexandr Dubickiy
22
Хочу поинтересоваться,для кого-то сейчас актуально изучение языков? Поделюсь материалами по иностранным языкам.
Дима
12
Здравствуйте. Какое условие необходимо, что бы приложение скомпилированное лазарусом в ubuntu запускалось на astra linux?
Эдуард Щербаков
21
Нужно найти номер позиции, с которой начинается подстрока S2 в строке S1. lea di, s1 ;Строка lea si, s2 Подстрока again: mov al, [si] mov ah, 02 ...
Ыиу
11
Выиграл лотерейные билеты (во взрослую жизнь), где обменивать на игрушки?
Magic
8
Привет Вам, Гуру вапора Смею обратиться с вопросом, по какой причине не сохраняются куки через request.client.send(get) и urlsession? Опишу чуть точнее: - есть первый запрос, ...
Alexander Orlov
10
.model small .stack 100h .data x db ? y db ? equation db 10, 5, -20 result db ? .code main proc mov ax, @data mov ds, ax ; Ввод координат x и y ...
Mr Beast
1
Карта сайта