BT

Code Contracts para .NET está Disponível para Download

por Abel Avram , traduzido por Flávia Castro de Oliveira em 03 Mar 2009 |

Code Contracts é a implementação .NET do conceito Design by Contract.Enquanto ele deve ser entregue com o .NET 4.0, Code Contracts já está disponível para download no DevLabs. Contracts impõem certas restrições no uso de APIs, tornando a programação mais segura, com mais validações, resultando em menos erros durante o runtime.

Design by Contract, ou Programming by Contract, não é um conceito novo na programação, muitas linguagens já tem tais implementações. O Code Contract traz este paradigma de programação para .NET. A idéia básica é para um contrato entre as duas partes envolvidas: o cliente (caller) e o fornecedor (API called). Aderindo aos termos do contrato, o cliente deve confiar que o fornecedor irá fornecer os resultados esperados e o fornecedor deve confiar que o cliente irá fará as chamadas apropriadas.

Há três tipos de condições contratuais disponíveis para Code Contracts: pré-condições, invariantes de objetos, e pós-condições. As pré-condições são usadas, por exemplo, para verificar que um construtor ou um método é chamado usando os valores do parâmetro correto. Uma pós-condição é usada para verificar que um valor retornado é apropriado. Invariantes de objeto são usadas para cumprir certas condições nos objetos para se certificar de que eles não obtenham valores ilegais.

Enquanto isso soa muito similar a testes unitários, o que é notícia é que estas validações podem ser realizadas em build time. O compilador fará verificações específicas via Contracts para garantir que todas as condições especificadas sejam cumpridas, emitindo aviso se não forem. O programador pode ver se uma condição não será cumprida e tomar medidas corretivas antes de executar o código.

Atualmente,o time DevLabs trabalha na inclusão de Contracts na documentação gerada para os projetos. Lendo a documentação de uma API, qualquer um poderá ver todas as condições do contrato especificado para ela.

O resultado final de usar Code Contracts é o código melhor e mais seguro, o uso mais apropriado de APIs externas, no fim um software melhor.

Links Úteis: Code Contracts documentação online, Microsoft Research Code Contracts website, forum relacionado.

Avalie esse artigo

Relevância
Estilo/Redação

Olá visitante

Você precisa cadastrar-se no InfoQ Brasil ou para enviar comentários. Há muitas vantagens em se cadastrar.

Obtenha o máximo da experiência do InfoQ Brasil.

Dê sua opinião

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão
Comentários da comunidade

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão

Dê sua opinião
Feedback geral
Bugs
Publicidade
Editorial
Marketing
InfoQ Brasil e todo o seu conteúdo: todos os direitos reservados. © 2006-2016 C4Media Inc.
Política de privacidade
BT

We notice you’re using an ad blocker

We understand why you use ad blockers. However to keep InfoQ free we need your support. InfoQ will not provide your data to third parties without individual opt-in consent. We only work with advertisers relevant to our readers. Please consider whitelisting us.