Объясните пожалуйста паттерн фабрика |
Здравствуйте, гость ( Вход | Регистрация )
Объясните пожалуйста паттерн фабрика |
FakeMoNEy |
3.7.2013, 22:43
Сообщение
#1
|
Новичок Группа: Новичок Сообщений: 7 Регистрация: 27.11.2012 Пользователь №: 3612 Спасибо сказали: 0 раз(а) Репутация: 0 |
Читаю С. Дьюхерста С++ Священные знания.
Там объясняется фабричный метод. Вроде понятно обьект генерирует информацию о себе при этом мы не заботимся о том кто он конкретно. Там приведен пример
Temp это служащий наследуемый от Employee при этом он может генерировать информацию о себе.
1)TempInfo должен быть наследником HRInfo? 2)Разве все равно не придется спросить тип служащего по какой-то внутренней информации, я имею ввиду не проще было бы ввести идентификатор(номер для типа служащего) чтобы просто определять кто он(рабочий, секретарь, водитель), хотя у разных рабочих разные поля, но тогда придется спросить о его типе как использовать объект о котором мало знаешь, чем это удобно? 3)Приведите пожалуйста пример фабрики другого плана может более наглядного, читаю теорию опыта пока мало но бездумно использовать патерны не хочу, объясните суть пожалуйста. |
|
|
Iron Bug |
4.7.2013, 18:42
Сообщение
#2
|
Профессионал Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: 12 |
в книге приведена схема классов в UML-формате (я только что проверила книгу в онлайн). если хочешь читать книги по паттернам проектирования, изучи для начала основы схем UML для объектно-ориентированного программирования, это всегда пригодится. там нет ничего сложного, просто обозначения на схеме имеют вполне конкретные значения, которые надо знать. иначе тебе придётся постоянно задавать много вопросов.
1. да, это наследование. на схеме это указано явно. 2. обычно фабрика используется другими классами и они знают, с чем имеют дело. 3. по паттернам проектирования есть очень много книг и сайтов. и даже тут форумчане пытались создать некое подобие примеров для паттернов: http://www.wiki.crossplatform.ru/index.php/Design_Patterns Сообщение отредактировал Iron Bug - 4.7.2013, 22:59 |
|
|
Текстовая версия | Сейчас: 2.1.2025, 21:14 |