Support for Design by ContractTM in the C# Programming Language.

Rachel Henne-Wu, William F. Mitchell, Cui Zhang · The Journal of Object Technology · 2005

There is evidence that "contracts," or assertion techniques involving preconditions, postconditions, and invariants, have a positive effect on overall software quality.Regrettably, very few programming languages support these techniques.Since the advent of Bertrand Meyer's Design by Contract™ method, introduced in the language Eiffel, a number of systems have been built to implement support for contracts in more commonly-used languages.Such support has not been satisfactorily implemented in C#.In this paper, we compare the different approaches of existing systems and introduce Contract Sharp, a tool that provides support for contracts in C#.

Read the paper · More papers on PaperTik