elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recuerda que debes registrarte en el foro para poder participar (preguntar y responder)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Ingenieria de Software en le Manejo de Errores
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Ingenieria de Software en le Manejo de Errores  (Leído 3,815 veces)
cyberserver

Desconectado Desconectado

Mensajes: 162


Lo que una mente crea, otra lo destruye


Ver Perfil WWW
Ingenieria de Software en le Manejo de Errores
« en: 24 Diciembre 2010, 01:07 am »

Hola amigos.

Quisiera abrir una pregunta acerca del manejor de errores teniendo ingenieria de software.!

La pregunta es quiza muy tonta pero me gustaria saber cual es la mejor manera para Avisar al Usuario de un error sin comprometer el Resultado Devuelto por el metodo o agregando mensajes ENORMES que quiten una bonita interface Y/o estetica de la aplicacion.

Por ejemplo en el siguiente metodo de Java, como podria avisar de un Error sin tener que colocar un Mensaje enorme que diga del error.
Código:
public int Suma(int a,int b){
     try{
        return a+b;
     }catch(Exception Error){
       JOptionPane.showMessengerDialog(null,"El error es " + Error);
       return null;
     }
}

Pensando en Java:
Esto del manejo de errores y la mejor forma para tratarlos no lo hago solo por estetica.! si no por buen funcionamiento de la aplicacion. ya que si queremos exportar una Clase a nivel web (JSP) no es funcional JOptionPane. y no quiero comprometer el resultado devuelto por el metodo por mostrar un tipo de Error.

como podria avisar de un Error sin usar un Mensage?


En línea






leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
***
Desconectado Desconectado

Mensajes: 3.069


/^$/


Ver Perfil WWW
Re: Ingenieria de Software en le Manejo de Errores
« Respuesta #1 en: 24 Diciembre 2010, 03:48 am »

Yo creo que depende del programador y de la importancia del dato. Yo no lo dejaría proceder hasta que de una respuesta buena. Por otra parte, yo recomendaría darle el mensaje en un JLabel en rojo en vez de un JOption....  >:D


En línea

Código
  1. (( 1 / 0 )) &> /dev/null || {
  2. echo -e "stderrrrrrrrrrrrrrrrrrr";
  3. }
  4.  
http://leonardogtzr.wordpress.com/
leogutierrezramirez@gmail.com
1mpuls0


Desconectado Desconectado

Mensajes: 1.186


Ver Perfil
Re: Ingenieria de Software en le Manejo de Errores
« Respuesta #2 en: 24 Diciembre 2010, 05:58 am »

Has intentado con

Código
  1. try {
  2.        ...
  3. }
  4. catch(Exception Error) {
  5.       JOptionPane.showMessengerDialog(null,Error.getMessage());
  6. }
  7.  

Además no lo estas hacienco como se deve (lo digo por tú código Java) ya que debes utilizar POO.

Por lo menos yo, intentaría manejar las Excepciones aparte.

Por ejemplo.

Código
  1. import javax.swing.JOptionPane;
  2.  
  3. public class Suma {
  4.  
  5. private int resultado;
  6.  
  7. public static void main(String args[]) {
  8. new Suma();
  9. }
  10.  
  11. public Suma() {
  12. String a;
  13. do{
  14. a = JOptionPane.showInputDialog(null, "Escribe un numero entero", "Entrada", 1);
  15. }while(!esNumero(a));
  16.  
  17. String b;
  18. do {
  19. b = JOptionPane.showInputDialog(null, "Escribe otro numero entero", "Entrada", 1);
  20. }while(!esNumero(b));
  21.  
  22. int numeroA = Integer.parseInt(a);
  23. int numeroB = Integer.parseInt(b);
  24.  
  25. int resultadoSuma = Sumar(numeroA, numeroB);
  26.  
  27. JOptionPane.showMessageDialog(null, "La suma de " +a +" y " +b +" es " + resultadoSuma, "Resultado", 1);
  28.  
  29. }
  30.  
  31. private boolean esNumero(String str) {
  32. try {
  33. Integer.parseInt(str);
  34. return true;
  35. }
  36. catch(Exception e) {
  37. JOptionPane.showMessageDialog(null, e.getMessage(), "Error", 0);
  38. return false;
  39. }
  40. }
  41.  
  42.    private int Sumar(int numA, int numB) {
  43.     return numA+numB;
  44.    }
  45. }
  46.  

Estoy utiizando variables de más para explicarme un poco mejor.

La primera idea de Leo Gutiérrez no es mala pero tal vez si el usuario mira que la aplicación no hace nada, llegará a pensar que simplemente está bloqueada o algo por el estilo.
La segunda me parece buena  ;)

Un saludo.

EDITO.
Entonces por lo que entiendo intentas generalizar las excepciones?  :-\ si sabes que el usuario al intentar hacer una suma por que mostrar todo el String que te manda, si puedes hacer por ejemplo.

Código
  1. try {
  2. ...
  3. }
  4. catch(Exception e) {
  5. JOptionPane.showMessageDialog(null, "Solo se aceptan valores numericos", "Error", 0);
  6. }
  7.  
« Última modificación: 24 Diciembre 2010, 07:35 am por Darhius » En línea

abc
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
consulta sobre Funciones de manejo de errores [c++] « 1 2 »
Programación C/C++
xkiz ™ 10 6,668 Último mensaje 11 Octubre 2011, 06:24 am
por Karman
Ingenieria de Software: ¿Herramientas que permitan verificar?, ¿Existen?
Programación General
astinx 3 2,796 Último mensaje 7 Febrero 2012, 00:00 am
por Xandrete
Manejo de errores dudas
Java
Cazs03 1 1,792 Último mensaje 8 Marzo 2013, 23:14 pm
por 1mpuls0
Bug VLC en el manejo de errores
Bugs y Exploits
Stakewinner00 5 5,727 Último mensaje 4 Septiembre 2013, 03:17 am
por cachacko
Manejo de errores [Resuelto]
PHP
elezekiel 4 3,126 Último mensaje 20 Agosto 2017, 21:44 pm
por elezekiel
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines