为了账号安全,请及时绑定邮箱和手机立即绑定

在面向对象编程中在使用到class的时候哪些class需要单例实现,哪些class不需要?

在面向对象编程中在使用到class的时候哪些class需要单例实现,哪些class不需要?

慕容森 2019-04-16 20:26:33
RT,觉得在写web应用的时候基本上用到的class都是logic处理、操作,像是function的集合,这样的class需要单例以节省内存ORM中返回的查找数据class不需要单例,一条数据是一个object,这样的class像是c中的struct,像是class表现出来的数据集合求各位大大高见!!!!:)
查看完整描述

2 回答

?
慕婉清6462132

TA贡献1804条经验 获得超2个赞

PHP的话,大概有几种场景
所谓function的集合“Utility”,还有表示一个CGI的执行过程的“Controller”等,这些概念本身不拥有数据也不拥有资源,单例都可能没必要,考虑publicstatic
数据库连接对象、全局配置、资源池等拥有全局可复用的数据或资源,这是单例的最佳应用场景
ActiveRecord对象,curl请求对象,数据库Query对象等拥有数据或资源且无法/无需全局复用,不能用单例
                            
查看完整回答
反对 回复 2019-04-16
?
小唯快跑啊

TA贡献1863条经验 获得超2个赞

不知道你说的是不是php,
php里的的数据库或缓存,
如果不是单例,每次实例化都会连接一次资源,很耗时的,
如果改成单例,就只连一次了。
像php这种语言,每次请求后,资源都回收了,所以单例子的意义并不大。
                            
查看完整回答
反对 回复 2019-04-16
  • 2 回答
  • 0 关注
  • 322 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信