我是设计模式的新手,所以我的问题听起来有点疯狂。
我有一个网页表单,上面有很多控件。根据用户拥有的权限和表单状态,某些控件需要可编辑或只读或隐藏等等。
我正在徘徊我应该采用什么样的设计模式来排序所有这些混乱?
我在考虑责任链,因此链中的每个链接都会对某些逻辑负责。
我是在正确的路上吗?
答案 0 :(得分:3)
虽然可能有很多方法可以解决您的问题,但如果没有关于用例的详细信息,很难推荐任何方法。
然而,听起来您可能需要考虑更广泛的问题。很少有业务需要应用您正在谈论的那种细粒度的权限。我经常看到开发人员过度创建极其灵活的角色/权限授权系统 - 但从业务角度考虑问题。通常,有一些角色的需求(权限)随着时间的推移变化很小 - 每个角色都在尝试执行不同的任务。
您是否可以通过为每个角色和/或针对手头任务优化的状态引入表单来更简单地解决此问题?从长远来看,您可能会发现这更容易维护,并且对您的用户来说更清晰。