Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
rikimaru2013
C++ Game Dev
2419 / 1113 / 240
Регистрация: 30.11.2013
Сообщений: 3,661
#1

Синглтон как антипаттерн - C++

09.07.2016, 07:37. Просмотров 281. Ответов 4
Метки нет (Все метки)

Доброе утро,

данный паттерн называют часто анти-паттерном, но не называют "валидную" ему замену - как она? Как по мне отличный паттерн решающие определённые задачи
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.07.2016, 07:37     Синглтон как антипаттерн
Посмотрите здесь:

Синглтон - C++
необходимо разработать класс, который бы гарантировал, что его экземпляр будет один и только один из объектов данного класса

Потокобезобасный синглтон - C++
Имеется следующий драфт синглтона с отложенной инициализацией: class NormPool; typedef std::shared_ptr<NormPool> PNormPool; ...

Синглтон для лог файла! - C++
#include <iostream> #include <cmath> #include <limits> #include <stdio.h> #include <math.h> #include <fstream> using namespace...

Синглтон Мейерса, нужны некоторые пояснения - C++
class Singleton{ public: static Singleton& init() { static Singleton Object; return Object; } ...

Мой синглтон. Дайте рекомендации, оцените, пожалуйста - C++
Доброе утро! Вот, наваял тут типа синглтон. Можете дать замечания по данной реализации. Спасибо! //...

Синглтон вызывает синглтон - Java SE
Привет. Что-то запутался. Есть Синглтон(надеюсь я его правильно сделал): public class Table extends JTable { private static...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Croessmah
Модератор
Эксперт CЭксперт С++
13056 / 7319 / 816
Регистрация: 27.09.2012
Сообщений: 18,055
Записей в блоге: 3
Завершенные тесты: 1
09.07.2016, 08:59     Синглтон как антипаттерн #2
goto тоже норм, однако некоторых бомбить начинает от одного упоминания.
rikimaru2013
C++ Game Dev
2419 / 1113 / 240
Регистрация: 30.11.2013
Сообщений: 3,661
09.07.2016, 09:07  [ТС]     Синглтон как антипаттерн #3
Croessmah, но про антипаттерн ноют в комментариях stackoverflow - как так) Кому верить?
Nick Alte
Эксперт С++
1608 / 1000 / 118
Регистрация: 27.09.2009
Сообщений: 1,931
Завершенные тесты: 1
09.07.2016, 10:41     Синглтон как антипаттерн #4
Цитата Сообщение от rikimaru2013 Посмотреть сообщение
Кому верить?
Здесь вам тут не церковь, чтобы верить. Простое нытьё вообще не в счёт, а в конструктивном нытье будут выдвинуты конкретные недостатки паттерна, и можно судить, стоит ли платить за результат эту цену.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.07.2016, 13:06     Синглтон как антипаттерн
Еще ссылки по теме:

как удалить синглтон? - JavaScript
создаю синглтон: var Singleton = function(param){ if (typeof arguments.callee.singleton=='undefined'){ arguments.callee.singleton...

Паттерн или антипаттерн - ООП и паттерны
Хелоу. Из списка антипаттернов на википедии: Возникает ассоциация с шаблоном Посредник(Proxy). В чём соль, товарищи?

[Unity, лайфхак] Как сделать адекватный синглтон (singleton или уникальный для сцены) компонент - Unity, Unity3D
Что такое singleton – я надеюсь знают все. Какие цели лично я преследую при использовании синглтона? Во-первых – легкий доступ к...

синглтон и синхронизация - Java SE
При такой синхронизации для каждого потока будет создаваться синглтон? Смысл тогда в синглтоне, если можно создать обычный класс без лишних...

Корзина синглтон - PHP ООП
Сделал 2 класса - корзина и мини-корзина (наследник предыдущего), оба синглтон, также и основной класс БД тоже такой же. все работает,...

Синглтон отдает 2 ошибки - PHP ООП
есть файл config.php, в котором прописаны глобальные переменные - настройки для подключения к БД <? define("DBNAME",'comp-gen'); ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
mporro
256 / 102 / 14
Регистрация: 04.07.2014
Сообщений: 571
09.07.2016, 13:06     Синглтон как антипаттерн #5
rikimaru2013
Синглетон -- это вариант глобального состояния. Это означает, что в программе есть состояния и их мутации. Она неизбежно незамкнута относительно процедур и данных.
В итоге: скудные методы абстракции. Зачем тогда ООП?

А если опираться на парадигму Чёрча, и писать ООП код, то там никаких глобальных состояний быть не может. А значит и синглетонов быть не должно.

Потому "одиночка" и есть антипаттер -- он выдаёт обрушение ООП в структурно-процедурный подход.

Добавлено через 41 секунду
Цитата Сообщение от rikimaru2013 Посмотреть сообщение
ему замену - как она?
Ему есть замена. ООП.
https://www.youtube.com/watch?v=-FRm3VPhseI
Yandex
Объявления
09.07.2016, 13:06     Синглтон как антипаттерн
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru