powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Статические методы vs фабрики классов
7 сообщений из 7, страница 1 из 1
Статические методы vs фабрики классов
    #34017176
Vetal
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем привет!

Мне интерестно, а чем использование Factory лучше чем использование статических методов? И чем вообще плохи статические методы? И зачем вообще нужны Factory?

Приведу пример:
1) Использование фабрики классов:
Пусть у меня есть класс RubricDao:
Код: plaintext
1.
2.
3.
4.
 public   class  RubricDao {
	 public  List<Rubric> findAll() {
		...
	}
}
Тогда использование этого класса в другом участке кода такое:
Код: plaintext
1.
rubricDao = DaoFactory.getRubricDao();
List rubrics = rubricDao.findAll();

2) Использование статических методов:
Пусть у меня есть класс RubricDao:
Код: plaintext
1.
2.
3.
4.
 public   class  RubricDao {
	 public   static  List<Rubric> findAll() {
		...
	}
}

Тогда использование этого класса в другом участке кода такое:
Код: plaintext
List rubrics = RubricDao.findAll();


Так вот, в упор не вижу, чем первое решение лучше, чем второе. Да, в первом случае нету статических методов. Но зато во втором случае везде достаточно вызвать одну строчку кода для вызова метода findAll(), и не нужно дергать никаких фабрик и писать две строчки кода.

Вобщем, обьясните, пожалуйста, какое решение лучше, и какая вообще польза от фабрик? Читал о фабриках статьи, но так и не понял, в чем преимущество. Обьясните, пожалуйста, на пальцах.

Всем заранее спасибо!
...
Рейтинг: 0 / 0
Статические методы vs фабрики классов
    #34017301
Фотография Pitbull terrier
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Фабрика не имеет статических методов, то, что у вас - называется factory method
Читайте про шаблон factory, там все написано

Dmitriy O "Итак вред от арабов (черных мусульман)
- Присутсвовали в татаро-монгольском иге"
...
Рейтинг: 0 / 0
Статические методы vs фабрики классов
    #34017324
Фотография Pitbull terrier
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Преимущества фабрик:
1) позволяют централизированно конфигурировать создаваемые объекты
2) в случае с абстрактной фабрикой - позволяет менять имплементации без изменения существующего кода

Dmitriy O "Итак вред от арабов (черных мусульман)
- Присутсвовали в татаро-монгольском иге"
...
Рейтинг: 0 / 0
Статические методы vs фабрики классов
    #34017393
OU
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
OU
Гость
авторчем использование Factory лучше чем использование статических методов?
это абсолютно разные вещи.

static factory methods
используются как альтернатива constructors. Преимущества static factory methods по сравнению с constructors:

1. Дают возможность более удобного именования методов.
2. Дают возможность кэширования обьектов.
3. Дают возможность использования синглтонов.

Другое общепринятое применение static factory methods это ситуации когда для выполнения какой либо операции не требуется создание обьекта. Например Collections, Math и др классы.

Factory design pattern используется для получения одного из возможных классов (сабклассов какого либо класса или имплементаций какого либо интерфейса) в зависимости от переданных аргументов. В данном случае классы объектов возвращаемых factory имеют один и тот же интерфейс но различную имплементацию. Этот подход дает возможность отгородить пользователя factory от логики отвественной за возврат того или иного класса. (если на пальцах, то для того чтобы купить гостям вино вы называете продавцу марку вина, а как это вино производят и откуда продавец его берет вам без разницы)
...
Рейтинг: 0 / 0
Статические методы vs фабрики классов
    #34017426
Джавист
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Было бы не плохо, если бы кто-то указал ссылки на статьи по проектированию фабрик.
...
Рейтинг: 0 / 0
Статические методы vs фабрики классов
    #34017483
Фотография Кувалдин Роман
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ДжавистБыло бы не плохо, если бы кто-то указал ссылки на статьи по проектированию фабрик.
Фаулера почитай.
...
Рейтинг: 0 / 0
Статические методы vs фабрики классов
    #34017580
ldima
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ДжавистБыло бы не плохо, если бы кто-то указал ссылки на статьи по проектированию фабрик.
Э. Гамма Р. Хелм Р. Джонсон Дж. Влиссидес "Приемы объектно-ориентированного проектирования".
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Статические методы vs фабрики классов
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]