![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
LE0N |
![]()
Сообщение
#11
|
Студент ![]() Группа: Участник Сообщений: 97 Регистрация: 10.3.2009 Из: Беларусь Пользователь №: 604 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Цитата Я тоже так пологал, пока не попробовал работать с "Одиночкой". А я с ним работал в течение года. Теперь вот плююсь.... |
|
|
ViGOur |
![]()
Сообщение
#12
|
![]() Мастер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 3296 Регистрация: 9.10.2007 Из: Москва Пользователь №: 4 Спасибо сказали: 231 раз(а) Репутация: ![]() ![]() ![]() |
А зачем? У синглтона есть один огромный недостаток - если захотелось заменить класс, который используется на данный момент, нужно менять либо сам синглтон, либо лезть в класс его использующий и заменять точку входа. (Теряется такая важная вещь в ООП как полиморфмизм) Думаю если так, тогда что-то у вас не так с планированием! ![]() Например есть у нас классы: Пример
Сообщение отредактировал ViGOur - 7.4.2009, 8:42 |
|
|
LE0N |
![]()
Сообщение
#13
|
Студент ![]() Группа: Участник Сообщений: 97 Регистрация: 10.3.2009 Из: Беларусь Пользователь №: 604 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Цитата LE0N, может быть я что-то не понимаю, но в каком случае нужно будет и что менять? Ну вот захочу я, например, хранить сессии не в файле, а в БД (общая база в локалке). А механизм с файлами будет использоваться ещё в одном месте - т.к. функционал сессионМенеджера полностью подходит. Задача, конечно, притянута за уши, но, я думаю, суть понятна... |
|
|
ViGOur |
![]()
Сообщение
#14
|
![]() Мастер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 3296 Регистрация: 9.10.2007 Из: Москва Пользователь №: 4 Спасибо сказали: 231 раз(а) Репутация: ![]() ![]() ![]() |
Это точно, что задача притянута, в приведенной тобой задаче это реализуется таким путем:
В CSessionManager используется указатель на CStore, ну и за счет полиморфизма сохраняется или туда или туда. ![]() |
|
|
LE0N |
![]()
Сообщение
#15
|
Студент ![]() Группа: Участник Сообщений: 97 Регистрация: 10.3.2009 Из: Беларусь Пользователь №: 604 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Цитата или туда или туда. Имелось ввиду, что код, который ты собираешься модифицировать, уже написан и везде использован один экземпляр класса. А модификация нужна для рефакторинга, либо для масштабирования своего проекта. Подумай на досуге.... Нужен ли тебе такой плюс вместо пары строк копи-паста... |
|
|
ViGOur |
![]()
Сообщение
#16
|
![]() Мастер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 3296 Регистрация: 9.10.2007 Из: Москва Пользователь №: 4 Спасибо сказали: 231 раз(а) Репутация: ![]() ![]() ![]() |
Не совсем понял, что имеется ввиду.
![]() |
|
|
![]() ![]() ![]() |
![]() |
Текстовая версия | Сейчас: 6.2.2025, 4:38 |