Code contracts is interesting topic to discover for me. Although it is new technology that is currently the lab rat of DevLabs it looks still very promising and useful. In this page you can find my postings about code contracts, references to other useful resources and download links to my presentation and example solution.
Feel free to use the content here in your own sessions but please don't forget to mention me as author and this blog as source of this information.
My postings about code contracts
- Controlling randomizer using code contracts
- Using runtime checking of code contracts in Visual Studio 2010
- Hiding ContractException
- Unit testing contracted code
- Interface contracts – forcing code contracts through interfaces
- Invariant code contracts – using class-wide contracts
- Code contracts and inheritance
- Enabling XML-documentation for code contracts
- Using Sandcastle to build code contracts documentation
- Code Contracts: How they look after compiling?
- Code Contracts: validating arrays and collections
My session files
The presentation and Visual Studio 2010 solution here are prepared for sessions. Presentation contains hidden slides with references to most important pages and other resources. Visual Studio 2010 solution contains source code you can show to audience and also presentation guides for code examples.
- CLR Inside Out: Code Contracts (MSDN Magazine, Melitta Andersen)
- Code Contracts in C# (InfoQ, Jon Skeet)
- Understanding and Benefiting from Code Contracts in .NET 4.0 (developer.com, Jani Järvinen)
- Introducing Advanced Code Contracts with the Entity Framework and Pex (CODE Magazine, Martin Lapierre) Code Contracts By Example
- Validating Collections with Code Contracts (devlicio.us)
- .NET Code Contracts and TDD Are Complementary (CodeBetter.com)
- Sandcastle with Code Contracts (Dave Sexton)
- Code Contracts and runtime rewriting (Luis Abreu)
These are tools that I use in my sessions about code contracts.
If you want to find out more about code contracts feel free to send me your question. I cannot guarantee 100% that I will blog about your topic but if I have time enough then I will blog for sure.