论坛首页 Java企业应用论坛

滥用Singleton会带来什么后果?

浏览 5948 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2004-05-18  
我最近在开发一个GUI的designer,因为涉及到诸多元素的诸多属性调整,为了在多这些多元素调整时的性能提升,我大量采用了Sigleton模式,感觉设计下来再到编码,Singleton简直被我用的“淋漓尽致“了!它给我带来的好处主要在性能,因为内存只用到一个副本,坏处从目前来看,实在没看出来,但是感觉不太妙!大家说说滥用Singleton会带来什么坏处?
   发表时间:2004-05-18  
就怕抢东西吃
0 请登录后投票
   发表时间:2004-05-18  
楼主犯了一个开发大忌。
开发的一个指导性原则是不要预先做优化,实际产生性能瓶颈后再在那里进行优化。
0 请登录后投票
   发表时间:2004-05-18  
引用
楼主犯了一个开发大忌。
开发的一个指导性原则是不要预先做优化,实际产生性能瓶颈后再在那里进行优化。

我不认为这是犯了什么大忌,也无须被这些原则捆住手脚。很多一眼可见的性能优化完全可以在开发的时候一并考虑,其实系统的性能就像海绵里的水,最初可以挤出来的何不先挤一下,原则只是教你不要只顾挤那点性能的水而忘了你的主要目的而已。
对于楼主的问题,因为不知道你的具体情况,所以也不能妄加评判。你的应用是一个GUI的设计器,应该是个单用户应用,运行在单个JVM中,使用一些Singleton应该没有什么问题。如果在多用户或者多线程的情况下,需要采取措施保证Singleton确实只产生了单例,而这样可能会造成一些系统瓶颈。
0 请登录后投票
   发表时间:2004-05-20  
最好用无状态singleton,这样可以保证在多个jvm中singleton的“唯一”。
0 请登录后投票
   发表时间:2004-05-25  
wolfsquare 写道
楼主犯了一个开发大忌。
开发的一个指导性原则是不要预先做优化,实际产生性能瓶颈后再在那里进行优化。


现在没有问题不要杞人忧天,否则就是庸人自扰.

Singleton为什么会有问题?它的原因你清楚吗?现在你的当务之急,应该是去搞清楚Singleton为什么不出问题的原因,而不是,反过来一定要否定自己现在的成果,至少,你的获得会比否定自己要获得的多的多.

其实那句被引用的话换一下用在wolfsquare自己也是一样的?
=========================================
楼主犯了一个开发大忌。
开发的一个指导性原则是不要预先做优化,实际产生性能瓶颈后再在那里进行优化。
=========================================
楼主犯了一个开发大忌。
开发的一个指导性原则是不要预先否定自己最对的事情,实际产生问题后,再在那里进行改进。
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
wolfsquare,在这里引用这句话,我想,本来就有违了那句规律的本义.
0 请登录后投票
   发表时间:2004-06-01  
诸多元素的诸多属性调整,为了在多这些多元素调整时的性能提升?
这种情况用protoType比较好吧,这样可以减少类的建立,也能提高性能。

我完全同意下面这句话:
楼主犯了一个开发大忌。
开发的一个指导性原则是不要预先做优化,实际产生性能瓶颈后再在那里进行优化。

刚开始的阶段,实现模块的清晰,层次之间的耦合低,代码容易理解是最重要的。

性能的提高可以留到运行后增对瓶颈进行优化,这个时候如果你前期的模块清晰,耦合低,重构起来很容易的。

不要玩模式玩的走火入魔。
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics