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.

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 menssagens dessa discussão
Comentários da comunidade

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

Receber menssagens dessa discussão

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

Receber menssagens dessa discussão

Dê sua opinião

Conteúdo educacional

Feedback geral
Bugs
Publicidade
Editorial
InfoQ Brasil e todo o seu conteúdo: todos os direitos reservados. © 2006-2013 C4Media Inc.
Política de privacidade
BT