O objetivo deste módulo é a aplicação das técnicas de refatoração de código com foco na inclusão de assertivas e DbC(Desing by Contract) para o melhor entendimento do sistema. O Deadly Wish foi construido na linguagem C++, por esse motivo somente as técncas de assertivas foram aplicas, as de DbC forma simuladas utilizando asserts. Na atividade de progração é usual que o desenvolvedor faça suposiçõe sobre o código(como irá executar, como será chamado...) isso causa falhas quando o código evolui. O uso de assertivas documenta e inclui pontos de checagem para as suposições feitas no código. Quando uma assertiva é verdadeira o código está funcionando como esperado, caso o contrário um erro inesperado foi encontrado.
Exemplo de código sem assert:
Exemplo de código com assert:
Exemplo de código sem Assert:
Exemplo de código com Assert:
Exemplo checando valor de constantes:
Exemplo de código checando os resultados da operação:
Exemplo de código classe character sem assert:
Exemplo de código classe character com assert:
Asserts - http://www.cplusplus.com/reference/cassert/assert/
Asserts Tutorial - http://renangreinert.blogspot.com/2011/08/acertando-com-assert.html