2010-07-20 7 views
1

Y at-il heuristiques pour trouver invariants de classe, je veux direheuristiques pour trouver invariants de classe

  • attantion de paie sur ...;
  • ne comptez jamais sur ...;

Peut-être y at-il des conseils courants.

Tous les liens sur papier où des exemples concrets d'études seront les bienvenus.

Répondre

1

les classes varient tellement les unes des autres, heuristiques seront difficiles à trouver. Cependant, il y aura beaucoup d'heuristiques pour des styles particuliers de classes. Par exemple, chaque implémentation de modèle de conception a son propre ensemble d'invariants. La meilleure et la plus simple façon d'obtenir vos invariants est de partir d'une spécification de ce que votre classe est supposée faire [ou d'un test de tests si vous faites TDD], et de déterminer quelles sont les conditions qui doivent être vraies pour ces spécifications être correctement mis en œuvre. En d'autres termes, vous "poussez vos spécifications à travers votre code". En faisant cela, les invariants apparaîtront comme les pierres d'achoppement que vous rencontrez. Notez que parfois "pousser" signifie la propagation vers l'avant de pré-conditions, parfois cela signifie la propagation vers l'arrière des post-conditions. Le plus souvent, les deux.

Questions connexes