¿Cuáles son las mejores prácticas para la programación de diseño por contrato?¿Cuáles son las mejores prácticas para la programación de diseño por contrato?
En la universidad aprendí el diseño de paradigma contrato (en un entorno orientado a objetos) Hemos aprendido tres maneras de abordar el problema:
1) Programación Total: Cubre todos los posibles casos excepcionales en su efecto (cf. Matemáticas)
2) Programación nominal: Sólo promesas '' los efectos adecuados cuando se cumplan las condiciones previas. (De lo contrario el efecto no está definido)
3) La programación defensiva: Utilice excepciones para señalar las invocaciones de métodos ilegales
Ahora, nos hemos centrado en diferentes escenarios OO sobre el uso correcto en cada situación, pero no hemos aprendido CUÁNDO usar CUAL ... (La mayoría de las tácticas son informadas por el ejercicio ...)
Ahora pienso que es muy extraño que no le haya preguntado a mi profesor (pero de nuevo, durante las clases, nadie lo ha hecho)
Personalmente, nunca uso nominales ahora, y tiendo a reemplazar condiciones previas s con excepciones (así que prefiero usar: throws IllegalDivisionByZero, que declarar 'condición previa: el divisor debe diferir de cero) y solo programa lo que tiene sentido (por lo que no devolvería un valor convencional en la división por cero), pero este método es solo basado en hallazgos personales y me gusta.
por lo que les pido chicos:
¿Hay algún mejores prácticas ??
realmente me gusta la afirmación obvia pero pertinente que limita el alcance para que pueda simplificar el código ... ¡excelente consejo! – Rob