Здравствуйте, adontz, Вы писали:
A>Бумажное издание за 2006 год у меня на столе, так что видел, даже внутрь заглядывал.
Значит все-таки сознание изменяет что-то другое..
A> Для меня достаточно очевидно, что код делает тоже самое, что в книжке и при этом на порядок лучше.
Я тебе уже объяснил, почему ты заблуждаешься.. )
A>Нет, она перестаёт быть фабрикой.
С какой стати?
A>Жжёшь. Иван, ты похоже попросту не знаешь паттерна Factory Method.
Ну давай посмотрим, кто чего не знает "Factory Method — Define an interface for creating an object." Все, точка. Про то что object должен реализовывать какие-то интерфейсы не сказано ни слова. Рома, ты определенно читаешь либо не тот GoF, либо странным способом.
A>Обсуждать что-либо с тобой, соответственно, абсолютно бесполезно.
A>Factory Method порождает реализации для интерфейсов, не важно сколько реализций, важно что все они реализуют некоторый интерфейс.
Вот это как раз, абсолютно не важно, для того чтобы называться "фабричным методом", совершенно не обязательно порождать объекты реализующие определенный интерфейс. Берем твой любимый C++, там нет нарошной сущности для декларации публичного контракта, а значит любая фабрика все равно завязана на конкретный класс.
Ну да фиг с ним. Это все буквоедство и словоблудие, важно другое. Бедулька в том, что ты не знаешь общепринятой терминологии и в место того, чтобы просто уточнить и согласовать набор терминов, становишся в неимоверно пафосную позу и начинаешь спорить не разобравшись.
В данном случае твое заблуждение состоит в том, что ты не в курсе довольно известного факта: the term factory method is often used to refer to
any method whose main purpose is creation of objects. И именно в этом смысле я употреблял термин "фабрика" (самостоятельная сущность, задача которой порождать объекты, конкретный паттерн factory method здесь вообщем-то не причем), и понятно это было вообщем-то всем, кроме, как выяснилось, тебя.
A>1. Отрицаешь возможность реализации stateless синглтонов.
Хм.. Смотря что иметь ввиду под stateless. Через твою терминологию я боюсь не продраться.
A>2. Не понимаешь паттерна Factory Method
Здесь, я надеюсь, ты уже осознал свое заблуждение. Можешь не извеняться..
A> и путаешь с ним Си++ код выше в этом сообщении.
Это ты путаешь, про связность сишных френдов я тебе уже рассказывал..
A>Все три пункта страшное заблуждение.
Поправочка. Все три пункта — твое страшное заблуждение..
A> Люди годами инкапсулировали, а пришёл добрый дядя Ваня и раскапсулировал всё нафиг, потому что нефиг
Новый термин выучил? Перечитай еще раз внимательно, что это такое, а главное, для чего его используется и медитируй над тем, зачем придумали паттерн IoC... Осознаешь — приходи..