BanTanger/im-whale-shark

[Feat] 使用状态模式解耦用户多端登录逻辑

Closed this issue · 0 comments

在原先逻辑中采用 if - else 简单堆叠用户每一种登录状态逻辑,虽说用户的登录状态基本上就是单端、双端、三端以及无限制。但这样的简单堆叠的代码逻辑也难以阅读和维护。
46ce997d0784e4b011ab2c4449133fb
image

在代码中也出现了大量的重复冗余代码。
因此选择使用状态模式来规范用户所选择的多端登录方式,并使用工厂模式包装状态行为,使得代码松耦合,易于后续扩展和代码的阅读