条件或先验条件指在执行一段代码前必须成立的条件。如果先决条件被违反了，则代码将产生未定义行为，因此其预期的工作能否履行也是未知的。不正确的先决条件还可能引发安全问题。通常，先决条件包括在关于这段代码的文档中。有时它可通过特定的语法结构（如卫语句或断言）在代码中进行检测。例如，阶乘只定义于自然数（大于等于零的整数）。因此计算阶乘的程序将会假定输入的值是一个整数，并且它大于等于零，这就是一个先决条件。
在面向对象编程中.面向对象编程中先决条件是契约式设计的一个重要组成部分。