Thomas Ball - Advances in Code Contracts for .NET
Code Contracts provide a language-agnostic way to express coding assumptions in .NET programs. The contracts take the form of preconditions, postconditions, and object invariants. Contracts act as checked documentation of your external and internal APIs. The contracts are used to improve testing via runtime checking, enable static contract verification, and documentation generation. In this talk, I ‘ll demonstrate Code Contracts and focus on the advances we have made in the static checker and new support for assisted code repair using the Roslyn CTP.