CodeContracts alternatives and similar packages
Based on the "Visual Studio Plugins" category.
Alternatively, view CodeContracts alternatives based on common mentions on social networks and blogs.
-
Nuget Package Manager
NuGet is the package manager for the Microsoft development platform including .NET -
Web Essentials
Web Essentials extends Visual Studio with lots of new features that web developers have been missing for many years -
Productivity Power Tools
A set of extensions to Visual Studio Professional (and above) which improves developer productivity. -
SideWaffle
A collection of Item Templates for Visual Studio 2012/2013 that makes any web developer's life much easier -
Refactoring Essentials
Open source extension for C# and VB.NET refactorings, including code best practice analyzers. -
VSColorOutput
Color highlighting for Build, Find and Debug output windows. Custom match patterns and colors can be added. -
Git Diff Margin
Displays live Git changes of the currently edited file on Visual Studio margin and scroll bar -
OzCode
OzCode is a Visual Studio Extension which cuts down on debugging time and increases productivity by detecting and isolating bugs, making them easy to fix. [$] -
Unchase.OpenAPI.Connectedservice
A Visual Studio 2017/2019 extension to generate C# (TypeScript) HttpClient (or C# Controllers) code for OpenAPI (formerly Swagger API) web service with NSwag. -
Unchase.Odata.Connectedservice
A Visual Studio Connected Service for generating API client code in C# or VB for OData web service. -
CodeLineage
Easy access to a cumulative diff view between file revisions (supports svn, git, mercurial, perforce). -
Developer Assistant
Developer Assistant for Visual Studio enables developers to find and reuse over 21 million code snippets and code sample projects from within the Visual Studio IDE.
Get performance insights in less than 4 minutes
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest. Visit our partner's website for more details.
Do you think we are missing an alternative of CodeContracts or a related project?
README
CodeContracts
Source code for the CodeContracts tools for .NET
Code Contracts provide a language-agnostic way to express coding assumptions in .NET programs.
The contracts take the form of pre-conditions, post-conditions, 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. Code Contracts bring the advantages of design-by-contract programming to all .NET programming languages. We currently provide three tools:
- Runtime Checking. Our binary rewriter modifies a program by injecting the contracts, which are checked as part of program execution. Rewritten programs improve testability: each contract acts as an oracle, giving a test run a pass/fail indication. Automatic testing tools, such as Pex, take advantage of contracts to generate more meaningful unit tests by filtering out meaningless test arguments that don't satisfy the pre-conditions.
- Static Checking. Our static checker can decide if there are any contract violations without even running the program! It checks for implicit contracts, such as null dereferences and array bounds, as well as the explicit contracts.
- Documentation Generation. Our documentation generator augments existing XML doc files with contract information. There are also new style sheets that can be used with Sandcastle so that the generated documentation pages have contract sections.
Quick Links
- Download: https://visualstudiogallery.msdn.microsoft.com/1ec7db13-3363-46c9-851f-1ce455f66970
- FAQ: http://research.microsoft.com/en-us/projects/contracts/faq.aspx
- Forum: http://social.msdn.microsoft.com/Forums/en-US/codecontracts/threads
Building from source
For working on the project, open CodeContracts.sln and build.
To create the installer and the nuget package, just run buildCC <version>
.
We use the convention:
- CC major version = 1.9.1
- CC minor version = {month}{day}.{buildInTheDay}
For instance, the 10th build on July 16 would be run as follows:
buildCC 1.9.10716.10