miércoles, 6 de abril de 2011

~Semana 10. Eventos, excepciones y errores

Semana 10
Materia: Programación Orientada a Objetos
Martes M1-M3

Hola a todos, en esta entrada les hablaré sobre eventos, excepciones y errores.

Bueno primero que nada se preguntarán que son cada uno de ellos, cuando utilizamos cada uno de estos, entre otras cosas.

Eventos
Un evento es una acción que realiza el usuario, estos eventos avisan al programa que ha realizado el usuario para así que el programa pueda manejarlo de alguna manera. Por ejemplo, cuando presionamos una tecla, cuando damos click en un botón se están generando eventos. 

Esto se debe de tomar muy en cuenta cuando estamos realizando nuestro código ya que debemos de pensar que tipos de eventos pueden llegar a ocurrir y manejar estos eventos de alguna manera. Por ejemplo en mi proyecto yo me pongo a pensar mucho en que va a haber botones por ejemplo de guardar o de crear cita y cosas así y yo tengo que avisarle a mi programa que al momento de que el usuario presione el botón de guardar, tiene que realizar los métodos necesarios para guardar todos los datos. 

La forma de manejar estos eventos en programación orientada a objetos se conoce como emisor/receptor donde el emisor se hace cargo de enviar el evento mientras el receptor lo recibirá y lo manejará de la forma que sea mas conveniente.




Algunos tipos de eventos. 
  • ComponentEvent:  Se produce este evento cuando el usuario mueva un componente.
  • FocusEvent:  Se produce este evento cuando se cambia el foco de un componente.
  • KeyEvent:  Se produce este evento cuando el usuario pulsa una tecla.
  • MouseEvent:  Se produce cuando el usuario realiza un movimiento con el mouse o haga un click.
  • ContainerEvent:  se produce cuando se añaden o eliminen componentes en el contenedor.
  • WindowEvent:  se produce cuando se realice algún tipo de operación con la ventana como abrirla y cerrarla.
  • ActionEvent:  Se produce cuando se efectúe alguna acción sobre un componente, por ejemplo, cuando pulsas un botón.


Como lo mencioné en mi proyecto se utilizarán varios eventos para cuando presionen los botones que espero que tenga mi programa como por ejemplo cuando den click a un botón guardar que esto ocasione que los datos se guarden, así pasará con todos los botones que tenga mi programa. También quiero que mi programa tenga diferentes pestañas que por ejemplo cuando elijas ver un paciente de la base de datos y te despliegue sus datos personales que tenga pestañas como historial, dieta del paciente y cosas así entonces yo creo que un evento también sería cuando cambia de pestaña y le despliega algo diferente.


Excepciones
Las excepciones se utilizan para la detección y corrección de errores. Si hay un error el programa no debería tronar y cerrarse, esto se debe evitar por medio de excepciones. Se lanza un throw con una excepcion para después poner un catch que captura el error y lo resuelve. Esto es para que el programa no se cierre y siga en funcionamiento. 

Tipos de excepciones.
  • Error: excepciones que indican problemas muy graves, de los que normalmente no se pueden recuperar.
  • Exception: Excepciones no definitivas, pero que se detectan fuera del tiempo de ejecución.
  • RuntimeException: Excepciones que se dan durante la ejecución del programa.

Todas las excepciones tienen como clase base la clase Throwable que es la que maneja todos los errores y excepciones. 

En mi programa se manejan muchas excepciones como las siguientes:

  • Una excepción que podría ser es cuando tenemos un paciente que tiene una enfermedad o por ejemplo que sea intolerante a la lactosa pues obviamente no tolera la leche con lactosa entonces se las podriamos eliminar, o en caso de que seleccione esta puede mandarle un mensaje que esto le puede hacer daño.
  • Otra excepción que quiero poner es por ejemplo en el caso de los intercambios de energía o todos los datos que deseamos ingresar, si el usuario en ves de poner un número pone un string el programa manejará una excepción que haga que muestre un mensaje para que vuelva a ingresar el dato correctamente.
  • También en algunas operaciones como en la dieta el porcentaje total de carbohidratos, proteinas y lípidos debe de dar 100% entonces si no da esto mandar un mensaje que no están bien los porcentajes.

Estas excepciones son las que he pensado pero creo que puede haber más, creo que cuando ya tenga la interfaz gráfica podrán salir más errores ya que al estarlo probando ya podré saber que otros errores pueden presentarse. 


Errores.
Como lo mencioné en un apartado de excepciones los errores son problemas que son imposibles de reparar, o sea que cuando sucede un error grave el programa se cerrará. Esto lo usaré en el peor de los casos que ya no se pueda hacer nada. Por ejemplo en la conexión con la base de datos creo que puede ser útil ya que si por ejemplo no se encuentra la base de datos el programa no puede hacer nada para resolver este problema y tendrá que cerrarse. 

Bueno esto es lo que corresponde a eventos, excepciones y errores de mi proyecto. Espero que hayan entendido, cualquier duda o comentario me lo hacen saber ;) saludos!

1 comentario: