domingo, 7 de junio de 2015

Desarrollo de una interfaz gráfica en java : validar la longitud de un campo.

Vamos a validar la longitud de un campo mediante un método de validación.  Esta es la interfaz donde aparece el campo que queremos validar.


En una clase que podemos llamar por ejemplo " Validar.java"  añadimos el método para validar el campo nombre.  Vamos a crear el método de validación:

 
/**
     * longitudNombre. Valida que el campo del nombre, en la venanta Evento,
     * tenga un máximo de 30 carácteres.
     *
     * @return si el <code>campo nombre</code> tiene más de 30 carácteres
     * devuelve false y true en caso contrario.
     */
    protected static boolean longitudNombre() {
        if (VentanaEvento.jTextFieldNombre.getText().length() > 30) {
            boolLongitudNombre = false;
        } else {
            boolLongitudNombre = true;
        }
        return boolLongitudNombre;
    }


Ahora "enlazamos" el método longitudNombre con la clase en la que desarrollamos la interfaz gráfica.

//Si el teléfono es correcto comprobamos que la longitud del campo nombre no super los 30 carácteres.
                else if (Validar.longitudNombre() == false) {
                    JOptionPane.showMessageDialog(null, "La longitud del campo 'Nombre' debe de ser como\n"
                            + "máximo de 30 carácteres.", "ERROR: longitud de campo incorrecta", JOptionPane.ERROR_MESSAGE);
                    boolDatosCorrectos = false;
                }




Si introducimos más de 30 caracteres en el campo nombre, la aplicación nos lazará un mensaje de error con los detalles del mismo.

jueves, 4 de junio de 2015

Java Swing, modificar el modelo de un spinner

Podemos cambiar el modelo de los spinners que por defecto nos da Netbeans. Las opciones que tenemos son :

  • predeterminado,
  • fecha, 
  • lista,
  • número.

En este vídeo se muestra el proceso.



Java swing, ejemplo sobre paneles.

Aquí tenemos un ejemplo de los distintos tipos de paneles que podemos añadir a un contenedor principal o JFrame.   Este ejemplo ha sido realizado con Netbeans como IDE y Ubuntu como sistema operativo.


lunes, 1 de junio de 2015

Java Swing, comparando el código de una ventana modal y una no modal.

Para la ventana modal.

import javax.swing.JDialog;
import javax.swing.JFrame;
public class VentanaModal {
    public static void main(String[] args){
        JFrame ventanaModal = new JFrame("¡ Intenta Cerrar esta ventana !.");
        ventanaModal.setAlwaysOnTop(true);
        ventanaModal.setSize(300,300);
        ventanaModal.setVisible(true);
        JDialog dialogoModal= new JDialog(ventanaModal,"DIALOGO MODAL", true);
        dialogoModal.setSize(300,300);
        dialogoModal.setLocationRelativeTo(null);
        dialogoModal.setVisible(true);
             
    }  
}

Para la ventana no modal.

import javax.swing.JDialog;
import javax.swing.JFrame;


public class VentanaNoModal {
    public static void main(String[] args){
        JFrame ventanaNoModal = new JFrame("¡ Intenta Cerrar esta ventana !");
        ventanaNoModal.setAlwaysOnTop(true);
        ventanaNoModal.setSize(400,400);
        ventanaNoModal.setVisible(true);
        JDialog dialogoNoModal = new JDialog(ventanaNoModal, "DIALOGO NO MODAL", false);
        dialogoNoModal.setSize(300,300);
        dialogoNoModal.setLocationRelativeTo(null);
        dialogoNoModal.setVisible(true);
    }  

}






Java Swing, evento para un botón que cierra la ventana actual.

private void BotonCerrarVentanActionPerformed(java.awt.event.ActionEvent evt) {                                                
        dispose();
        this.setVisible(false);
    }                                              


Java Swing, evento para un botón que abre una ventana.



private void BotonAbrirVentanaActionPerformed(java.awt.event.ActionEvent evt) {                                                
        new VentanaQueSeAbre(this, true).setVisible(true);
    }        


sábado, 23 de mayo de 2015

La importancia de las pruebas de software

Nuestro entorno social está íntimamente relacionado con la tecnología hasta el más mínimo detalle. Más allá de los nuevos dispositivos de hardware que constantemente invaden el mercado, hay una especie de alma que controlan y determina el devenir de esos dispositivos y de nuestra propia existencia, nuestro bienestar y seguridad : el software.

No vamos a entrar en detalles de que es el software, ni de cómo se realizan las pruebas de software; esos, son cuestiones tan extensas que necesitaríamos dos o tres temas de ingeniería informática para explicarlos.  Hablemos llanamente de la importancia de las pruebas de software.

Los objetivos de las pruebas de software.




En la anterior presentación podemos ver cuáles son los principales objetivos de las pruebas de software, pero más allá de los objetivos teóricos, veamos algunos ejemplos de la vida real, en algunos casos ejemplos de consecuencias trágicas, como el ocurrido hace poco en nuestro país.






Si quieres, con una rápida búsqueda en Internet puedes encontrar  otros fallos de software que causaron graves problemas.  Aquí te dejo un enlace.

Evidentemente, todos los ejemplos de fallos en el software , no son achacables a que no se realicen las necesarias pruebas en el desarrollo del mismo y, es que, ni siquiera llevando a cabo las más estrictas pruebas y planificaciones de software, se puede garantizar que esté libre de fallos.  Tratándose de software, el conjunto completo de casos de prueba es teóricamente infinito y por lo tanto, el número de pruebas a realizar implicará la búsqueda de un equilibrio entre recursos y tiempo. 

Tanto el desarrollador de software, como el cliente que encarga el desarrollo, se han de exigir que se realice una estricta planificación de las estrategias de prueba.  Según diversos estudios el coste económico relativo a un error se multiplica por un factor de 1 si se comete en la fase de análisis de requisitos, por 3-6 si es en la fase de diseño, por 10 si es en la codificación y por 40-50 si es en la fase de pruebas.

Finalmente  debemos de tener claro que "el cliente siempre lleva la razón" y, por esta razón, después de un cierto tiempo en el que el cliente haya estando usando nuestra aplicación y descubra defectos, o que la aplicación no realice lo que se esperaba de ella o en la forma en que se esperaba, debemos revisar la aplicación y corregir esas taras.