Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我的意思是,是否有任何寻找类不变量的启发式方法
也许有共同的建议。
欢迎任何研究现实生活示例的纸上链接。
类之间的差异如此之大,启发式方法将很难获得。不过,对于特定风格的类,会有很多启发式方法。例如,每个设计模式实现都有自己的一组不变量。
获得不变量的最好和最简单的方法是从你的类应该做什么的规范开始[或者如果你做 TDD 的测试测试],并找出哪些条件必须满足这些规范才能正确实现. 换句话说,你“通过你的代码推动你的规范”。当你这样做时,不变量将作为你遇到的绊脚石“出现”。
请注意,有时“推过”意味着前置条件的前向传播,有时它意味着后置条件的反向传播。大多数情况下,两者兼而有之。