History | Log In     View a printable version of the current page.  
Issue Details (XML | Word | Printable)

Key: RSRP-65548
Type: New Feature New Feature
Status: Open Open
Priority: Major Major
Assignee: Ilya Ryzhenkov
Reporter: Mike Strobel
Votes: 5
Watchers: 7
Operations

If you were logged in you would be able to see more operations.
ReSharper

Design by Contract Support with Static Analysis

Created: 18 Apr 08 22:03   Updated: 21 Apr 08 13:59
Component/s: None
Fix Version/s: Alderman
Security Level: Everybody (All jira users)

Original Estimate: Unknown Remaining Estimate: Unknown Time Spent: Unknown


 Description  « Hide
I propose a powerful and compelling new feature for the next major release of ReSharper (v5.0?): Design by Contract support. While there are some decent DbC solutions out there for .NET, the better ones rely on assembly rewriting and only provide runtime verification that contracts are being respected. It occurred to me that ReSharper has a very powerful static analysis engine, which could be put to very good use by performing realtime and/or compile-time verification of contracts. The R# 4.0 EAP already supports a couple of simple DbC constructs, such as nullable and non-nullable members, via its support for code annotations. The R# team could build upon the existing framework by adding support for preconditions, postconditions, invariants, and other DbC constructs. I could see many development teams investing in R# licenses just for DbC support alone, as proper use of DbC drastically improves the reliability and quality of code.

 All   Comments   Work Log   Change History      Sort Order:
There are no comments yet on this issue.