你怎么称呼涵盖一切的代码?

时间:2013-05-22 06:54:17

标签: language-agnostic

我想知道你如何调用代码来涵盖用户可以想象的所有可能性。我的意思是,就像一个代码,其中每个Bug都经过测试,用户可以想到“我想知道我能不能做到这一点”,他实际上可以,或者“我想知道程序员是否考虑过这个”,程序员做了... 它被称为完整的代码,还是完美的代码?它有技术术语吗?

2 个答案:

答案 0 :(得分:2)

它被称为The Principle of Least Astonishment

当然,建立一个完美的界面或编写完美的代码是不可能的,所以从来没有任何意外,但你可以尝试尽可能接近。

答案 1 :(得分:1)

魔术。至少从用户的角度来看,根据Arthur C. Clarke's third law

  

任何足够先进的技术都与魔术无法区分。

魔术师的程序员的角度来看,不可能涵盖所有可以想到的可能性(例如,参见Halting Problem)。但是,通过遵循良好的编码约定,例如@PatrickMcElhaney提到的那些,您可以接近“涵盖所有内容”的代码。

我想添加的一种方法是 unit testing :如果您使用用户可能输入的输入进行单元测试,那么您将更接近确定“我“覆盖了一切。”