你好,针对需要检查大量值是否符合正确格式和长度等数据验证场景,最好使用哪种设计模式呢?目前我正在使用多个if语句,但看起来很混乱。
你好,针对需要检查大量值是否符合正确格式和长度等数据验证场景,最好使用哪种设计模式呢?目前我正在使用多个if语句,但看起来很混乱。
看一下规范模式。它与领域驱动设计相适应,背后有一个相当简单的概念。
希望这可以帮到你。
布伦丹
嗯,这取决于您的代码当前状态。
我会尝试遵循以下步骤:
1)尝试提取类似的验证代码,并将其打包为单独的函数/实用程序模块等。只需调用函数进行验证,不要将验证代码放在验证器中。
2)有了这个,您可以构建一个主验证器作为验证器的组合,将验证的子步骤打包到操作类中,并构建一个大型验证器,将启动所有这些小步骤,并在其中一个子任务失败时失败(但首先评估是否不是您的情况中的过度杀伤,如果您的验证不是那么复杂,可能更快地结束重构)
3)然后,在此模式下,如果您的验证逻辑经常更改,可以尝试将组合的配置放在代码之外。如果您可以访问像Spring Framework这样的控制反转工具包,您可以从XML配置而不是从代码构造您的组合。这具有优势,因为随着您的验证要求的变化,您不必重新构建项目来进行修改,并且它将业务逻辑与代码分离。
你可以尝试使用策略设计模式