Fdff

Solo disponible en BuenasTareas
  • Páginas : 5 (1167 palabras )
  • Descarga(s) : 0
  • Publicado : 21 de octubre de 2010
Leer documento completo
Vista previa del texto
Parte 1
Objetivos 1. Utilizar eclipse para validar el invariante de una clase 2. Utilizar eclipse para ejecutar las pruebas del caso de estudio del traductor |
INSTRUCCIONES 1. Visite la página del curso moodle estructuras de datos 1 y lea la descripción del proyecto llamado traductor 2. Estudie el modelo conceptual de la aplicación 3. Descargue el código fuente y genere elrespectivo proyecto 4. Ejecute el programa a partir de la clase InterfazTraductor e interactúe con la aplicación. |
VERIFICANDO EL INVARIANTE DE UNA CLASEDEFINICION: la instrucción assert de Java permite verificar una aserción o afirmación.1 Localice en el código de la clase Traduccion el método verificarInvariante() y conteste: * ¿Cuál es la responsabilidad de este método? * La responsabilidadde este método es verificar que el invariante de la clase se cumpla . si algo falla lanza un error * ¿Qué otros métodos son llamados en el cuerpo método? * Los métodos son: palabraEsValida( ) traduccionEsValida( ) * ¿Para qué sirve el método palabraEsValida() y qué relación tiene con el invariante de la clase Traduccion? * Sirve para saber si la palabra es valida y si no estanula y además si es diferente de la cadena vaciaLa sintaxis de la instrucción assert es la siguiente:Assert expresion1: expresion2 * ¿De qué tipo son las expresion1 y expresión2 respectivamente?Son de tipo boolean 2. Identifique en la clase Traductor los métodos que llaman al método verificarInvariante() y clasifíquelos según su responsabilidadPor defecto, durante la ejecución de un programano se verifican las instrucciones assert. Para activar esta opción agrega en eclipse, en la ventana de ejecución del traductor, en la parte de parámetros de la maquina virtual la opción –ea como se muestra en la siguiente figura.A continuación haga clic en el botón Run y ejecute la aplicación. 3. Modifique el constructor de la clase Traductor para que no inicialice los vectores de traduccionesy luego vuelva a ejecutar la aplicación.¿Qué sucedió?Aparece un error en la parte de avajo que nos guía directamente hacia el error , algo importante es que con el –ea el programa no nos permite ejecutarlo hasta que corrijamos el error¿Cómo se llama la excepción lanzada?Exception in thread "main" java.lang.AssertionError: Diccionario español-ingles sin inicializar 4. Ahora modifique losparámetros de la máquina virtual de la siguiente manera.-ea:uniandes.cupi2.traductor.mundo.Traduccion y ejecute la aplicación¿Qué paso?Nos permite ejecutar la aplicación pero como el error esta en traductor se nos va a desbordar en la ejecución si por el contrario colocamos traductor no nos va a permitir la ejecucionExplique cuales aserciones se activaron y cuales noatjava.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source) at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source) at java.awt.EventDispatchThread.pumpEvents(Unknown Source) at java.awt.EventDispatchThread.pumpEvents(Unknown Source) at java.awt.EventDispatchThread.run(Unknown Source)y las que no :Exception in thread "main" java.lang.AssertionError: Diccionario español-ingles sin inicializar atuniandes.cupi2.traductor.mundo.Traductor.verificarInvariante(Traductor.java:333) at uniandes.cupi2.traductor.mundo.Traductor.<init>(Traductor.java:93) at uniandes.cupi2.traductor.interfaz.InterfazTraductor.<init>(InterfazTraductor.java:83) at uniandes.cupi2.traductor.interfaz.InterfazTraductor.main(InterfazTraductor.java:225) 5. Explique la utilidad del invariante para el programador.Las invariantesson de gran utilidad gracias que a estas se pueden encontrar los errores lógicos y además es mucho mas fácil de encontrar los errores gracias a que esto nos permite lanzar excepciones que nos va a permitir con mayor facilidad encontrar diferentes errores dentro del programa,Me gusta mucho que no nos permite acceder cuando tenemos un error y asi no se le va a desbordar al usuario final |

Parte...
tracking img