mad*_*lor 28 singleton design-patterns
我已经尝试过几次了解Singleton是什么.也许我只是太过视觉化......所以任何人都可以用一个简单的比喻来分解它.
类似帖子:
run*_*ako 67
根据要求,这里有一些类比:
您可以实例化许多True对象,但它们都将引用相同的实际项目(即True的通用概念).根据您应用程序的域,可能会有更具体的示例:
Mar*_*tin 13
辛格尔顿是有用的,当你必须确保有一个且只有一个类的实例,而这个对象必须从代码中的多个位置进行访问.
如果你的类的多个实例可以同时使用是有意义的,那么你不需要单例.
以下是有关单身人士使用位置的一些信息:http: //www.ibm.com/developerworks/webservices/library/co-single.html
从前面提到的文章:
要确定一个班级是否真的是一个单身人士,你必须问自己一些问题.
- 每个应用程序都会以完全相同的方式使用此类吗?(确切地说是关键词)
- 每个应用程序是否只需要此类的一个实例?
(永远和一个是关键词)这个类的客户是否应该不知道他们所属的应用程序
?如果您对所有三个问题的回答都是肯定的,那么您就找到了一个单身人士.这里的关键点是,如果所有应用程序都完全相同,并且客户端可以在没有应用程序上下文的情况下使用该类,则类只是单例.
Ate*_*ral 13
单身人士是羊皮服装的全球变量:)
http://googletesting.blogspot.com/2008/08/root-cause-of-singletons.html
归档时间: |
|
查看次数: |
4088 次 |
最近记录: |