契约式设计(DBC,Design By Contract)定义了方法应该包含输入和输出验证.因此,可以确保所有的工作都是基于可用的数据,并且所有的行为都是可预料的.否则,将返回异常或错误并在方法中进行处理.要了解更多关于DBC的内容,可以访问wikipedia. 在我们的示例中,输入参数很可能为null.由于没有进行验证,该方法最终会抛出NullReferenceException.在方法最后,我们也并不确定是否为用户返回了一个有效的Double,这可能导致在别的地方引入其他方法. ) ) t…