Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Conditional 在一个有大量条件逻辑的程序中,有没有任何心理技巧可以快速推断出所需的ifs/ELSE?_Conditional_Pair Programming - Fatal编程技术网

Conditional 在一个有大量条件逻辑的程序中,有没有任何心理技巧可以快速推断出所需的ifs/ELSE?

Conditional 在一个有大量条件逻辑的程序中,有没有任何心理技巧可以快速推断出所需的ifs/ELSE?,conditional,pair-programming,Conditional,Pair Programming,通常在编程中,一个非常常见的需求是某些功能需要大量的条件逻辑,但不足以保证规则引擎 例如,测试一个数字可以被x整除,但也可以是某物的倍数、某物的因子、某物的平方根等。正如你所能想象的,沿着这些线的某物很容易涉及到很多ifs/else 虽然有可能使用更现代的编程技术来减少混乱,但如何快速并以计算的方式推断出所需的ifs/ELSE 例如,在一个为汽车保险潜在客户推断必要报价的程序中(顺便说一句,规则引擎除外),年龄、地点、驾驶分数、收集这些分数的年龄等都有条件逻辑。是否有任何心智技巧可以快速推断出多

通常在编程中,一个非常常见的需求是某些功能需要大量的条件逻辑,但不足以保证规则引擎

例如,测试一个数字可以被x整除,但也可以是某物的倍数、某物的因子、某物的平方根等。正如你所能想象的,沿着这些线的某物很容易涉及到很多ifs/else

虽然有可能使用更现代的编程技术来减少混乱,但如何快速并以计算的方式推断出所需的ifs/ELSE

例如,在一个为汽车保险潜在客户推断必要报价的程序中(顺便说一句,规则引擎除外),年龄、地点、驾驶分数、收集这些分数的年龄等都有条件逻辑。是否有任何心智技巧可以快速推断出多余的条件分支?只是简单的经验,没有特殊的心理技巧吗?这一点很重要,因为结对编程有很多噪音,因此很难真正思考问题,甚至很难有足够的时间来实现这个想法


谢谢

我想说你应该使用命题逻辑。 建议: q=年龄大于18岁
p=位置在10英里以内
r=驱动点小于3
s=收集积分时年龄小于18岁

你可以说。。。

(^is和)
如果(q^p^r^s){
//你是合格的还是什么!
}否则{
//离开这里
}

我认为你应该使用命题逻辑。 建议: q=年龄大于18岁
p=位置在10英里以内
r=驱动点小于3
s=收集积分时年龄小于18岁

你可以说。。。

(^is和)
如果(q^p^r^s){
//你是合格的还是什么!
}否则{
//离开这里
}

我建议,试图在头脑中做这类事情是自找麻烦,而试图与伴侣一起做这类事情会让事情变得更糟。有时你不得不坐下来思考,甚至在纸上做些笔记。如果你不喜欢命题逻辑,那就试试。

我认为,试图在头脑中做这类事情是自找麻烦,而试图与伴侣一起做会让事情变得更糟。有时你不得不坐下来思考,甚至在纸上做些笔记。如果您不喜欢命题逻辑,请尝试。

我会添加简单、可读、简短的方法,例如:

IsMinor(..)  
IsRecordClean(..)
IsMeetingPreReqs(..)   //which checks several "simple" conditions
IsValidForInsurance(..)   
然后结合使用它们来创建具有有意义名称的新方法,例如:

IsMinor(..)  
IsRecordClean(..)
IsMeetingPreReqs(..)   //which checks several "simple" conditions
IsValidForInsurance(..)   
(很抱歉给你举了一些例子,我在这里努力学习英语,但你明白了。)

这将使您的代码更加清晰,从而减少因分心而混淆的可能性。

不是头脑本身,而是有点..

我会添加简单、可读、简短的方法,例如:

IsMinor(..)  
IsRecordClean(..)
IsMeetingPreReqs(..)   //which checks several "simple" conditions
IsValidForInsurance(..)   
然后结合使用它们来创建具有有意义名称的新方法,例如:

IsMinor(..)  
IsRecordClean(..)
IsMeetingPreReqs(..)   //which checks several "simple" conditions
IsValidForInsurance(..)   
(很抱歉给你举了一些例子,我在这里努力学习英语,但你明白了。)

这将使您的代码更加清晰,从而减少因分心而混淆的可能性。


你的同伴应该帮助你思考问题的复杂性,而不是干扰你的思考。应该是的。但对于那些需要持续的精神努力而不分散注意力的问题,我表示怀疑。结对编程对我来说听起来像地狱。我认为这个问题更适合你。你的同伴应该帮助你思考复杂的问题,而不是干扰思考。应该,是的。但对于那些需要持续的精神努力而不分散注意力的问题,我表示怀疑。结对编程对我来说听起来像地狱。我认为这个问题更适合我。这是我能想到的唯一合理有用的答案。好主意。我只需要一个使用决策表对逻辑和实际代码进行建模的示例。@dotnetdev:遵循链接?我做了,我只是希望有一个端到端的示例,但我明白了。技术很好!这是我能想到的唯一合理有效的答案。好主意。我只需要一个使用决策表对逻辑和实际代码进行建模的示例。@dotnetdev:遵循链接?我做了,我只是希望有一个端到端的示例,但我明白了。技术很好!我认为
是不可分割的,而multipleof(…)
是一个好名字,因为除了测试一个看似任意的条件外,它本质上是没有意义的。一般来说,如果你想在函数名中加一个“and”,那你就是在写一个糟糕的函数。这个方法已经不存在了!我认为
是不可分割的,而multipleof(…)
是一个好名字,因为除了测试一个看似任意的条件外,它本质上是没有意义的。一般来说,如果你想在函数名中加一个“and”,那你就是在写一个糟糕的函数。这个方法已经不存在了!