Показать сообщение отдельно
Старый 18.06.2013, 11:18   #4  
Logger is offline
Logger
Участник
Лучший по профессии 2015
Лучший по профессии 2014
 
3,971 / 3267 (116) ++++++++++
Регистрация: 12.10.2004
Адрес: Москва
Записей в блоге: 2
Ну раньше можно было легко сделать такой финт - в конструкторе сделать вставку чтобы в зависимости от каких-то условий (например от параметров в настроечной табличке), сгенерить другого наследника. Поведение системы менялось, но мы не трогали кучу мест вызывающих конструктор. От пользователей класса это было скрыто.

Как быть в данном случае теперь? Если у нас все однозначно определяется атрибутом, то получается что мы заданием атрибута жестко фиксируем конкретного наследника.

Т.е. чтобы повторить вышеописанный финт, придется менять кучу мест коде ?
Или теперь надо действовать как-то иначе ?
Или внесение кастомизаций в Классфактори не запрещено, так что мы для переданного значения атрибута все же сможем подсунуть другого наследника ?

Кстати, неявная связь - атрибут - наследник все равно есть. Перекрестные ссылки её позволяют отследить ?
За это сообщение автора поблагодарили: ta_and (3).