知识卡片
单件控制唯一
内容
单件保证某类只有一个实例,并提供全局访问点。它适合确实代表唯一资源或协调者的对象,但也会引入隐藏依赖和测试困难。发散:唯一性是领域约束时才值得用,不应把它当省事的全局变量。
参考来源
- 位置:第3章《创建型模式》3.5节「Singleton(单件)」1.意图及2.动机(源文件:_epub-src/OEBPS/Text/part0067.xhtml)
- 结论依据:原文明确给出单件的意图——保证一个类仅有一个实例并提供一个访问它的全局访问点,并以打印假脱机、文件系统等为例说明只应有一个实例的场景,直接支持卡片对单件保证某类只有一个实例并提供全局访问点、适合代表唯一资源或协调者的论述。
- 原始内容:"保证一个类仅有一个实例,并提供一个访问它的全局访问点……虽然系统中可以有许多打印机,但却只应该有一个打印假脱机(printer spooler),只应该有一个文件系统和一个窗口管理器。"