Questions tagged [code-contracts]

Code Contracts provide a language-agnostic way to express coding assumptions in .NET programs. The contracts take the form of preconditions, postconditions, and object invariants. Contracts act as checked documentation of your external and internal APIs.

Filter by
Sorted by
Tagged with
0 votes
0 answers

Client-Server Coupling in gRPC vs REST

Quoting this article - The Other key differences: gRPC vs. REST section (client server coupling): Client-server coupling REST is loosely coupled, which means the client and the server do not need to ...
Veverke's user avatar
  • 423
1 vote
2 answers

Interfaces for CRUD Classes

In an in-house solution I've been working on, I've been unable to understand the benefit of how interfaces are frequently implemented throughout the project. Which is as follows: Want to do CRUD ...
8protons's user avatar
  • 1,369
6 votes
6 answers

Should I assert the preconditions of functions in a public API?

I am writing a library for some data structures in C that will be used in embedded systems. I have had issues designing and coming up with a solid error handling plan. This API is only subject to ...
Michael Joseph's user avatar
1 vote
1 answer

Contract decoupling on microservices

I am not trying to launch a Microservices vs SOA debate but I find hard to understand the following statement: "Microservices architecture does not support contract decoupling, whereas contract ...
Cris's user avatar
  • 313
9 votes
4 answers

Handling changes in a event-driven microservice architecture

I'm doing an research-project where I'm researching the options to handle changes in an event-driven microservice architecture. So, let's say we got an application where we got four different ...
CGeense's user avatar
  • 191
19 votes
2 answers

When to use [Pure] on a constructor?

I'm learning about code contracts in .NET, and I'm trying to understand the idea of pure constructors. The code contracts documentation states: All methods that are called within a contract must be ...
p.s.w.g's user avatar
  • 4,185
13 votes
6 answers

Contract Based Programming vs Unit Test

I am a somewhat defensive programmer and a big fan of Microsofts Code Contracts. Now I cannot always use C# and in most languages the only tool I have is assertions. So I usually end up with code ...
ronag's user avatar
  • 1,189
27 votes
4 answers

Why would I use code contracts

I recently stumbled upon Microsoft's framework for code contracts. I read a bit of documentation and found myself constantly asking: "Why would I ever want to do this, as it does not and often cannot ...
Falcon's user avatar
  • 19.3k
3 votes
4 answers

Why must the burden of proof rest with the caller and not the method of the class that is being called?

Michael Perry states in his Pluralsight course on Provable Code (transcript subscription only) that: [T]he burden of proof rests with the caller In a code contract, why must the burden of proof ...
Phil C's user avatar
  • 1,966
6 votes
1 answer

What are the practical examples of code exploration techniques?

Code Exploration (CE) is quite a new term and I wonder if there already any successful examples of implementing this techniques in terms of Continuous Integration principles? In short, Code ...
Ilya Ivanov's user avatar
10 votes
2 answers

code contracts/asserts: what with duplicate checks?

I'm a huge fan of writing asserts, contracts or whatever type of checks available in the language I'm using. One thing that bothers me a bit is that I'm not sure what the common practice is for ...
stijn's user avatar
  • 4,138
4 votes
2 answers

Do .NET 4.0 Code Contracts have a role to play in solo-programmer projects?

I often find myself wondering what programming best practices apply to solo programming, since most of the time, I'm the only programmer on a project. I just started experimenting with C# 4.0 Code ...
devuxer's user avatar
  • 676
55 votes
10 answers

Should a method validate its parameters? [duplicate]

Say you are designing a Square root method sqrt. Do you prefer to validate the parameter passed is not a negative number or do you leave it up to the caller to make sure the param passed is valid. How ...
Amit Wadhwa's user avatar
  • 1,962