编码原则:不变量/前置条件/后置条件
“显式的表达假设“,这句话布置适合编码,也适合和人交往。
不变量
类型会持有某些状态,不变量则是对这些状态合法性的一些断言,每次修改系统状态的时候都需要显式的调用这些断言,如果不满足不变量,则说明:业务逻辑有问题。
前置条件
类型承担某些职责的时候需要一定的资源,即:前置条件,如果不满足前置条件,则说明:调用代码有问题。
后置条件
客户遵守了条件,类型必须兑现其承诺,即:后置条件,如果不满足后置条件·:则说明·:业务逻辑有问提。
后置条件多数采用单元测试给予定义。
效率问题
可以通过条件编译在合适的时候去除各种断言。
编码原则:不变量/前置条件/后置条件相关推荐
- 《Imperfect C++中文版》——1.3 运行期契约:前置条件、后置条件和不变式
本节书摘来自异步社区出版社<Imperfect C++中文版>一书中的第1章,第1.3节,作者: [美]Matthew Wilson,更多章节内容可以访问云栖社区"异步社区&qu ...
- 规约——前置条件和后置条件
规约是客户端和开发者达成的一种"协议",双方在开发之前沟通spec,从而界定双方的责任.前置条件主要限制客户端,后置条件主要限制开发者.前置条件满足了,后置条件必须满足.若前置条件 ...
- java 前置零_程序员面试必考题(二十二):Java中的前置条件和后置条件
转载自微信公众账号:开点工作室(ID:kaidiancs) Java程序中,程序员可以使用前置条件与后置条件,来控制是否执行方法及判断方法是否正确执行. 前置条件(precondition)是一条条件 ...
- 前置条件,不变性条件,后置条件 --《java并发编程实战》
阅读<java并发编程实战>4.1.1章 收集同步需求时, 反复出现了"不变性条件","不可变条件","后验条件",令我一头雾水 ...
- 函数前置条件和后置条件
前置条件指调用者调用该函数之前必须满足的条件.一般来说,前后置条件都可以转化为assert语句. 比如传递个strcpy的参数必须都是有效指针,win32下调用socket之前,必须先调用WAStar ...
- 《数据结构与抽象:Java语言描述(原书第4版)》一P.2.2 前置条件和后置条件...
本节书摘来华章计算机<数据结构与抽象:Java语言描述(原书第4版)>一书中的第1章 ,第1节,[美]弗兰克M.卡拉诺(Frank M. Carrano) 蒂莫西M.亨利(Timothy ...
- Imperfect C++读书笔记(二):前置条件、后置条件和不变式
一.定义 前置条件:指函数履行其契约所必须满足的条件,即此函数可以执行的必须满足的条件. 后置条件:指函数执行完毕后,返回之前哪些条件是调用者可以期望的. DbC:Design by Contract ...
- python关于 unittest的常见用法:前置条件与后置条件
import unittest class first_case(unittest.TestCase):@classmethoddef setUpClass(cls): ##执行一次print(&qu ...
- GContracts1.1.0支持前置/后置条件的继承
2019独角兽企业重金招聘Python工程师标准>>> GContracts 1.1.0已于端午节前(6月14日)发布了.Andre Steingress 在其博文中,讲述了该版本中 ...
最新文章
- System.currentTimeMillis()竟然存在性能问题,这我能信?
- java内部类的定义_java定义内部类
- php扩展管理配置信息,PHP扩展管理 - 城市之雾的个人空间 - OSCHINA - 中文开源技术交流社区...
- unity NGUI 一些操作记录
- 使用CodeFirst创建并更新数据库
- C# 数组增加元素_C#的集合类型及使用技巧
- MyEclipse 报 String cannot be resolved to a type
- 一封 Cloud Native 的来信……
- 电改:国内电网的账单也与时俱进了
- Ubuntu 下压缩软件的安装
- python 状态空间模型_基于状态空间的建模过程
- 0723数组复习 堆区 动态数组
- c# 毕设计算机毕设
- [源码和报告分享]基于C++实现的运动会统分系统
- dispatch(dispatched)
- java以及JavaScript的香港身份证验证方法。
- 音频处理—SOX音效
- 移动硬盘提示磁盘结构损坏且无法读取怎么办
- 扑克玩法:9点半--数据分析
- 使用pytorch获取bert词向量 将字符转换成词向量