函数规约

函数规约

1. Java文档

在这里插入图片描述
包括:

  • 继承的层次结构,直接子类,接口,实现类
  • 类的描述
  • 构造方法总结
  • 列出可以调用的方法
  • 每个方法和构造函数的详细描述
  • 每个方法和构造函数的详细描述
    • 方法签名:返回类型、方法名称和参数。还有异常,即方法可能会遇到错误。
    • 完整描述。
    • 参数:方法参数的描述
    • 该方法返回的内容的描述

2.规格:

规格说明是团队开发的关键,是分配责任的基础。. 规格说明是实现者和使用者之间的一种契约,实现者有责任满足契约,使用者可以信赖契约,对双方都有约束。
在这里插入图片描述
规格只需要说明方法干什么的,而不用说明如何实现的

 
Behavioral equivalence (行为等价性)

根据规约判断是否行为等价

与实现无关!

如果两个函数符合这个规约,故它们等价。

Specification的结构

  • 前置条件(precondition):对客户端的约束,在使用方法时必须满足的条件。由关键字 requires 表示;

  • 后置条件(postcondition):对开发者的约束,方法结束时必须满足的条件。由关键字 effects 表示

  • 异常行为(Exceptional behavior):如果前置条件被违背,会发生什么

对于规约有

  • 确定的规约:给定一个满足前置条件的输入,其输出是唯一的、明确的

  • 欠定的规约:同一个输入可以有多个输出

  • 未确定的规约:同一个输入,多次执行时得到的输出可能不同;但为了避免分歧,我们通常将不是确定的spec统一定义为欠定的规约。
    在这里插入图片描述

规约分类:

  • 操作式规约,例如:伪代码

  • 声明式规约:没有内部实现的描述,只有"初-终"状态,声明式规约更有价值

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值