12 abr 2011

Identificación de eventos, excepciones y errores

Programación Orientada a Objetos 
Semana 10 

Texto con diagramas que explica los eventos, excepciones y errores particulares al software que está diseñando.

Eventos
En Java, los eventos representan toda la actividad que tiene lugar entre el usuario y la aplicación. Abstract Windowing Toolkit (AWT) comunica estas acciones a los programas de uso de eventos. Cuando el usuario interactúa con un programa digamos haciendo clic en un botón de comando, el sistema crea un evento que representa la acción y delega en el código de control de eventos dentro del programa. Este código determina la forma de controlar el evento por lo que el usuario obtiene la respuesta adecuada.

Existen varios grupos de eventos comunes en programas creados en Java, como pueden ser:
Eventos de la ventana.
Eventos del teclado.
Eventos del ratón.
Eventos de las barras de desplazamiento.

Para que un evento logre hacer la acción para la cual se le programo, es necesario tener un escuchador que este al pendiente de las acciones del usuario, y este responda inmediatamente de alguna forma.

> Como todo programa que incluye una interfaz gráfica como eventos de mi proyecto tendré una ventana que responderá a los botones de la esquina superior y marcan el cierre o la acción de minimizar la ventana.

> Como en mi programa se necesita que el usuario llene algunos campos se tiene que tener un escuchador para el teclado, que este recibiendo datos del teclado.

> Y el escuchador para los botones de la ventana principal, también requiere del escuchador.

Estos será los eventos que tendría tomados en cuenta en mi programa.

Excepciones
Una excepción es un evento, que se produce durante la ejecución de un programa, que interrumpe el flujo normal de las instrucciones del programa.

Cuando se produce un error dentro de un método, el método crea un objeto y lo entrega al sistema en el tiempo de ejecución. El objeto, llamado un Objeto de Excepción, contiene información sobre el error, incluyendo su tipo y el estado del programa cuando se produjo el error. A la creación de un objeto de excepción y la entrega al sistema en el tiempo de ejecución se denomina una excepción.

El sistema de ejecución busca en la pila de llamadas de un método que contiene un bloque de código que puede controlar la excepción. Este bloque de código que se llama un controlador de excepciones. La búsqueda se inicia con el método en el que se produjo el error y procede a través de la pila de llamadas en el orden inverso en el que los métodos fueron llamados.

Existen tres tipos de excepciones:
El primer tipo de excepción es la excepción comprobada. Estas son condiciones excepcionales que una aplicación bien escrita debe anticipar y recuperarse. Por ejemplo, si se le pide al usuario indicar el nombre de un archivo que se desea abrir, y se comete un error en la escritura del archivo y este no existe, entonces el programa deberá lanzar un aviso de error en la escritura del nombre del archivo.

El segundo tipo de excepción es el error. Estas son condiciones excepcionales que son externos a la demanda, y que la aplicación por lo general no puede anticipar o recuperarse. Por ejemplo, si es necesario abrir un archivo para que el programa haga determinada acción y por fallas en el sistema o hardware este archivo no se puede abrir, estaríamos enfrentando este tipo de error.

El tercer tipo de excepción es la excepción en tiempo de ejecución. Estas son condiciones excepcionales que son internos a la demanda, y que la aplicación por lo general no puede anticipar o recuperarse. Estos por lo general indican errores de programación, tales como errores de lógica o el uso indebido de una API.

El primer paso en la construcción de un controlador de excepciones es encerrar el código que podría lanzar una excepción dentro de un try.

Para asociar controladores de excepciones con try al proporcionar una o más bloques catch inmediatamente después de la try de bloque. Ningún código puede estar entre el final de las try de bloque y el comienzo de la primera catch de bloque.

try {

} catch (ExceptionType name) {

} catch (ExceptionType name) {

}

Errores
EL error es un tipo de excepción que no se puede anticipar y por lo general termina cerrando el programa. Lo ideal es avisar al usuario que se deberá cerrar el programa por completo, y evitar que el programa se cierre frente a los ojos del usuario sin darle previo aviso.

> En mi caso, si al abrir el programa se detecta un error que impide abrir correctamente el programa, este deberá cerrarse inmediatamente.

> También se puede esperar a que en el momento de la ejecución del programa un evento deje de escuchar las peticiones por falla en el sistema mismo, este deberá mandar el error y avisar del cierre próximo del programa.

Referencias:
Java Exceptions
Eventos en Java

1 comentario: