1:45 PM Saturday Room: 4305
Design by Contract/Programming, or also called Contract-First development with Code Contracts and Pex, is a design/development approach which first defines a contract for class and its methods before implementing it. Since VS2010, by specifying invariants, pre and post conditions for methods with Code Contracts, Microsoft provides the platform support for taking advantage of this programming paradigm. This allows for writing less and cleaner coder, which is easier to read, test, and document. <br/><br/>
Pex, like Code Contracts a development out of the Microsoft Research Lab, allows for automatically creating unit tests. By integrating with Code Contracts, many of the needed Unit Tests can be actually generated instead of written manually. <br/><br/>
Finally, Code Contracts also integrate tightly with Microsoft Sandcastle, generating more detailed and accurate MSDN style API documentation and utilizing the conditions specified through Code Contracts.<br/><br/>
Within this session, I will give an introduction to Contract-First Development, Code Contracts, Pex and Sandcastle, pointing specifically to the advantages while also addressing limitations and risks. 1:15 PM Sunday Room: 1401
Over the lifetime of a product, maintaining the product is actually one - if not the most - expensive area(s) of the overall product costs. Writing clean code can significantly lower these costs. However, writing clean code also makes you more efficient during the initial development time and results in more stable code. You will be presented design patterns and best practices which will make you write better and more easily maintainable code. You will learn how to apply them by using an existing implementation as the starting point of the presentation. Finally, patterns & practices benefits are explained.<br/><br/>
This presentation is based on C# and Visual Studio 2010. However, the demonstrated patterns and practice can be applied to every other programming language too.