java契约式编程_契约式设计 Design by contract

在我职业之初,我想得最多的是:当调用一个方法时,传入的参数,我是进入该方法前检查呢?还是进入到该方法后检查?特别是在某个方法中,为了保证该方法能顺利执行,之前的条件检查、if…else…简直是噩梦。所以我会想:至于吗?有必要这样做吗?哇,这个问题让我纠结了好长时间。其实,问题本身并不难,只是需要抽象出一个理念,或是原则,然后一直这样做。后来,我为自己定个原则:在进入方法前,进行严格检查;而进入到方法后,只进行简单检查。也就是说,如果符合方法的需求,就执行,否则什么都不做,直接返回。之后,无意间看到“契约式设计”才意识到,我这样做原来有理论基础的,只是之前不知道而已。

因此,当我们不断前进时,的确需要时不时地看些理论,这样就会加深我们对问题的理解。

本文内容 概述

历史

描述

与软件测试的关系

概述

契约式设计/契约式编码(Design by Contract(DbC)/Programming by Contract,以下简称 DbC )是一种设计计算机软件的方法。这种方法描述了,软件设计者应该为软件组件定义正式的、准确的、可验证的接口规范,它扩展了抽象数据类型(abstract data type,ADT)对于先验条件(preconditions)、后验条件(postcondition)和不变性(invariants)的一般定义。这些规范称为“契约(contracts)”,它是一个比喻,类似于商业契约/合同的条件和职责。

(注:软件组

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值