这是来自 DB 规范化理论的一个概念:
当一个非关键字段是关于另一个非关键字段的事实时,违反了第三范式。
将类似的概念应用于函数/函数参数是否有意义?
考虑以下函数:
function validate(field, rule_name, rule_value);
// Usage
validate("password", "min_length", 6);
validate("password", "matches_regex", "/^\S+$/");
在这个示例函数中,第三个参数描述了第二个参数,并且似乎对第一个参数没有“态度”。在某种程度上,它感觉像是一个非规范化的函数。
我不知道我是否正确地制定了这一点,但我可以注意到数据库中的表名和表字段以及函数名和函数参数之间的类比。
如果这样的类比有意义,那么函数设计者从 DB 规范化理论中借用概念是否也有意义?