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

如何摆脱if-else困境

如何摆脱if-else困境

浮云间 2019-03-20 15:41:50
hi,虽然这类问题网上也有大量的解答,不过我感觉我的这个问题有点特殊,也可能是我脑子转不过来,想在这里提一下。假设有两个类class a和b,结构如下:class a{ }class b{    public $a;    public function attach($a){        $this->a = $a;     }    public function destroy(){        if($this->a !== null){            //do something         }else{            //do something         }     } }这里class b的销毁需要根据class a是否绑定在class b上,但是问题是这样的关系还有很多,可能销毁b先让a与b解绑,但是解绑a、b的前提是需要解绑a、c诸如此类的关系;我在网上有看到状态模式,因为获得状态也是先根据现有条件判断。所以我想是否有更好的设计模式或者数据结构来表示这种绑定关系,来替代方法中if-else的判断呢,谢谢!
查看完整描述

2 回答

?
慕慕森

TA贡献1856条经验 获得超17个赞

其实if else 是非常建议这么写的。简单,别人容易看得懂。

查看完整回答
反对 回复 2019-03-20
  • 2 回答
  • 0 关注
  • 472 浏览
慕课专栏
更多

添加回答

举报

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