Недавно на собеседовании моего друга попросили рассказать, чем отличается стандартный синглтон от моно. Я никогда раньше не слышал этот термин, и простой поиск в Google не дает значимых результатов.
Мой друг предположил, что это объект, в котором конструктор является общедоступным, но все члены статичны. Мне это кажется немного глупым, поскольку это был бы просто статический объект, для которого вообще не требовался бы конструктор.
Есть ли у кого-нибудь лучшее определение моно-синглтона? Это что-то полезное по сравнению со стандартным синглтоном?


Я знаю, что «синглтон» можно изменить для поддержки n экземпляров, где n - фиксированное число. Однако я узнал, что это называется мультиплтон или мультитон (я забыл точное название, но оно было похоже на это). Возможно, интервьюер хотел понять, что вы можете использовать что-то очень похожее на шаблон Singleton для получения n экземпляров объекта. Но если это так, то это было неудобно.
Я никогда раньше не слышал, чтобы этот термин использовался, но я предполагаю, что он используется для обозначения синглтона, который позволяет создать только один экземпляр. (Обычный синглтон этого не требует, он также может выдавать ограниченное количество экземпляров).
Либо так, либо это синглтон, сделанный в моно ...
Это абсолютно правильно, однако у меня сложилось впечатление, что это обобщение было общепринятым.
Я полагаю, они на самом деле имели в виду «моногосударство». Я не буду вдаваться в подробности, поскольку теперь они легко доступны в Google (наряду с обсуждением отличий от синглтонов).
Однако я скажу, что моносостояния имеют, по крайней мере, все те же проблемы и синглтоны, и их следует избегать, насколько это возможно (вместо этого рассматривая другие подходы, такие как Параметризация сверху или внедрение зависимостей, где это необходимо).
В Google есть ровно одно обращение к «моно-синглтону» (в кавычках), поэтому я бы решил его как синглтон, используемый в нейтральной платформе DotNet, в отличие от «Java Singleton» или «C++ Singleton».
Извините, не удержался :)
Синглтон, как определено GoF, допускает только один экземпляр. Ограничение количества экземпляров - это обобщение Singleton.