Design By Contract

Esta lição introduz o conceito de Design by Contract (DbC), uma técnica de desenvolvimento de software proposta por Bertrand Meyer na década de 1980, juntamente com a linguagem de programação Eiffel. DbC baseia-se na ideia de que as interações de software devem ser tratadas como contratos formais entre um cliente (o chamador de um método ou função) e um fornecedor (o método ou função em si), estabelecendo obrigações e benefícios mútuos claros.

Componentes Principais do DbC:

  • Pré-condições: Definem o que deve ser verdadeiro ou satisfeito antes da execução de um método. Representam as obrigações do chamador.
  • Pós-condições: Estipulam o que deve ser verdadeiro após a execução de um método. Representam os benefícios que o chamador recebe.
  • Invariantes: São condições que devem permanecer verdadeiras antes e após a execução de qualquer método dentro de um objeto. Asseguram a consistência do estado do objeto ao longo de sua vida útil.

Abordagem Declarativa:

Em DbC, pré-condições, pós-condições e invariantes são expressos de maneira declarativa, especificando “o que” deve ser verdadeiro, em vez de “como” um estado deve ser alcançado ou “como” uma operação deve ser realizada. Esta abordagem foca no resultado desejado e nos requisitos de entrada, sem se prender aos detalhes de implementação.

DbC promove a clareza na comunicação de expectativas entre partes de um sistema, facilitando a detecção de erros, a manutenção de código e o desenvolvimento de software mais confiável. Ao definir explicitamente as responsabilidades de chamadores e fornecedores, ajuda a evitar muitos erros comuns em programação, como o uso inadequado de métodos ou a manipulação incorreta de estados de objeto.

Implementar DbC exige uma mentalidade de design cuidadoso e atenção aos detalhes, incentivando os desenvolvedores a pensar profundamente sobre as interações entre diferentes partes de um sistema de software. Esta abordagem contribui significativamente para a criação de software robusto, eficiente e fácil de entender e manter.

Classificação

Lição

DOWNLOADS E LINKS DE ACESSO

Design By Contract
Link para os slides (Google Docs)

Faça seu cadastro

Para ter acesso a este conteúdo exclusivo, faça o seu cadastro a seguir:

Trabalha na EximiaCo? Então conecte-se com sua conta:

Gostaria de mais informações?

Se você tem interesse neste assunto ou gostaria de mais informações sobre como a EximiaCo pode ajudar a sua empresa a utilizar a tecnologia para gerar mais resultados, entre em contato conosco.

Tenho interesse em conversar

Se você está querendo gerar mais resultados através da tecnologia, preencha este formulário que um de nossos consultores entrará em contato com você:

Área de colaboradores

Esse ambiente é de acesso restrito à equipe de colaboradores da EximiaCo.

Trabalha na EximiaCo? Então conecte-se com sua conta: