Sebastien Cesbron:

> Ce qui me g�ne dans ce que tu dis Guillaume, c'est que tu supposes que tes tests 
>sont exhaustifs.


Effectivement, mais ce devrait etre le cas pour une version dite "de 
production". Il faudrait donner une definition de "version de 
production" mais pour ma part, il s'agit d'une version finale, testee et 
optimisee (sans infos de debugage, sans assertions, ...).

> Si ce n'est pas le cas et qu'il y a rupture de contrat sur une version de production 
>non instrument�e, je pense que le r�sultat peut �tre catastrophique.


Dans tous les cas, c'est catastrophique. Lorsqu'il y a rupture de 
contrat, il y a arret general. Et un arret general, c'est juste un tout 
petit peu moins catastrophique.

> Sinon par rapport aux avantages des pr�conditions sur l'h�ritage, je pense qu'il 
>faut que je manip pour m'en rendre compte car j'en parle sans savoir comment est g�r� 
>l'h�ritage.


C'est un point tres important. Les contrats font partie integrante de la 
definition d'une classe et sont donc herites.

Jerome Moliere:
 >justement les assertions servent aussi a gerer des cas exceptionnels

Pour les cas exceptionnels, il y a les exceptions.

 > contrat viole, implique sortie du programme et non continuer 
n'importe comment!!!

Attention ceci est une violation de contrat: arret general. Ne faites 
pas exploser la fusee, laissez-la retomber ;-)

Bon j'ai relu hier soir [Meyer88]:

- La PPC est principalement un outil methodologique (conception).
- La PPC est aussi un outil de documentation.
- La PPC a un cout d'environ 20% (dans Eiffel).
- Les exceptions sont la pour gerer les valeurs illegales a l'execution.

(les 20% sont un minimum, eiffel ne disposant pas des ensembles et des 
operateurs universels. On peut facilement arriver a 99%).

Guillaume




Répondre à