软件构造错题笔记----3.2 Specification

1
在Java的语法中,使用@param表达一个方法的pre-condition,使用@return 和@throws来表达方法的post-condition。

下面说法正确的是:(ABD)
A除非在post-condition中明确声明过,否则方法内部代码不应该改变输入参数。
B方法的spec描述里不能使用内部代码中的局部变量或该方法所在类的private属性。
C若在方法的post-condition中声明"client端不能修改该方法所返回的变量“,可以减少该方法的潜在bug。(错误,应该是pre-condition)。
D若为某方法设计Junit test case,在任何test case中对该方法的调用必须遵守其pre-condition。

3.如果修改了某个方法的spec使之变弱了,那么可能发生的是ACD
A client调用该方法的代价变大了,即client需要对调用时传入该方法的参数做更多的检查
B程序员实现该spec的难度增加了,自由度降低了(难度减小,自由度变大)
C如果用椭圆面积表示spec的强度,那么椭圆面积增大了
D该spec的实现方法更多了

4.软件构造错题笔记----3.2 Specification_第1张图片

你可能感兴趣的:(软件构造)