B15-关于单例的滥用

一、单例的问题

    1、全局状态

      “单例就是披着羊皮的全局状态” 。一个单例可以在不需要显示声明对其依赖的情况下,被使用在任何地方。单例的全局性和有状态性,导致隐式的在两个看起来完全不相关的模块之间建立了耦合。

    2、生命周期

         单例应该只用来保存全局的状态,并且不能和任何作用域绑定。如果这些状态的作用域比一个完整的应用程序的生命周期要短,那么这个状态就不应该使用单例来管理。用一个单例来管理用户绑定的状态,是代码的坏味道,你应该认真的重新评估你的对象图的设计。

二、避免使用单例的方法

     1、依赖注入

          

          

         

         

 

原文地址:http://www.cocoachina.com/industry/20140615/8830.html

 

 

转载于:https://www.cnblogs.com/yaann/p/4661909.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值