http://migueljaque.com
Notas sobre Metodologías Ágiles
Estás en:   Inicio Patrones Patrones y Errores
Patrones y Errores PDF Imprimir E-mail
Sábado, 19 de Abril de 2008 07:46

Aunque lo normal al hablar de patrones es referirse a los "Patrones de Diseño", cuyo objetivo es Facilitar el Cambio, también podemos encontrar algunos patrones que nos ayudan a Prevenir Errores:

Uso de Excepciones

Existen varias formas de tratar los errores que se pueden producir en un método. Pero, una de las más sólidas (sino la más) es el uso de excepciones. En lugar de devolver un código de error (false, -1,...) los métodos que detectan un error lanzan una excepción. Es responsabilidad de las capas superiores capturar y dar tratamiento a las excepciones que se produzcan.

Este sistema de tratamiento de errores tiene la ventaja de evitar que situaciones de error imprevistas causen comportamientos erróneos en el programa.

Validación de Entradas

Otro de los "patrones" que se aplican habitualmente para evitar errores es la validación de datos de entrada. Básicamente consiste en someter a todos los datos de entrada al sistema a una prueba de validación. Esta prueba comprueba el tipo y el rango de cada parámetro para garantizar que está en los márgenes esperados por el sistema. Naturalmente este "patrón" no se aplica en la entrada de cada método, sino que basta con aplicarlo en el método de entrada (generalmente en el interfaz de usuario).

Separación de Comandos y Consultas

También conocido como "Command-Query Separation Principle" (CQSP). Consiste en separar los métodos en dos tipos: métodos que realizan consultas al sistema y métodos que realizan comandos en el sistema. Los métodos de consulta no alteran el estado del sistema, mientras que los métodos de comando no devuelven información sobre el sistema.

Esta separación de métodos evita que los programadores cometan errores al interpretar el uso de un método. Si un método sirviera a la vez para consultar el estado del sistema y modificarlo, podría ocurrir que algún programador lo utilizara para obtener información del sistema (consultar una variable) y no se percatara del cambio que ese método realiza en el sistema (por ejemplo, borrar información).

Actualizado ( Sábado, 19 de Abril de 2008 08:07 )
 

Apoyo a la Cultura Libre: Si eres legal ¡¡COMPARTE!!