220 likes | 421 Views
JavaBeans. Fernando Romero Contreras Francisco Javier Sigler Gómez. Índice. ¿Por qué los beans ? ¿Qué son los beans ? Propiedades Proceso de escritura Ejemplos Bibliografía. ¿Por qué los beans ?. ¿Por qué los beans ?. Java requiere usar una tecnología de objetos reutilizables.
E N D
JavaBeans Fernando Romero Contreras Francisco Javier Sigler Gómez
Índice • ¿Por qué los beans? • ¿Qué son los beans? • Propiedades • Proceso de escritura • Ejemplos • Bibliografía
¿Por qué los beans? • Java requiere usar una tecnología de objetos reutilizables. • Java necesitaba optimizar el proceso de creación de la interfaz de usuario. • Su objetivo es acercarse a la facilidad de uso del entorno VB y orientarse a tecnología de componentes.
¿Qué son los beans? • Componente software reutilizable basado en la especificación JavaBeans (JB) de Sun que puede manipularse visualmente con una herramienta de desarrollo. • Adaptable a diferentes entornos tales como Jbuilder, Forte o VisualCafé. • A través de ActiveX se puede desplegar en aplicaciones como VisualBasic y Microsoft Office.
Propiedades • Reusabilidad • Portabilidad • Introspección • Personalización • Comunicación mediante eventos • Persistencia • Métodos no son diferentes de Java
Reusabilidad • Son componentes reusables, a partir de una paleta de componentes puedes utilizarlos en varias partes del programa.
Portabilidad • En un momento donde predominaban componentes propietarias como Visual Basic de Microsoft, java aplica su política de entorno abierto y permite que los JavaBeans sean utilizables por cualquier herramienta.
Introspección • Las herramientas de desarrollo descubren las características de un Bean mediante un proceso conocido como introspección, después podrá modificar sus propiedades. • Adhiriéndose a las convenciones específicas de nombres conocidas como patrones de nombrado.
Personalización • Características de apariencia y comportamiento de un Bean que pueden ser modificadas durante el diseño. • Utilizando editores de propiedades, o utilizando personalizadores de Beans más sofisticados.
Comunicación mediante eventos • Los eventos son un mecanismo de notificaciones entre un objeto fuente y unos objetos receptores. • Las herramientas de desarrollo pueden examinar un Bean para determinar qué eventos puede disparar (enviar) y cuáles puede manejar (recibir).
Persistencia • Permite a los Beans guardar su estado, y restaurarlo posteriormente. • Utilizan la Serialización de Objetos Java, los cuales son una forma para almacenar el estado interno de una colección de Java.
Los Métodosno son diferentes de Java • No son diferentes de los métodos Java, y pueden ser llamados desde otros Beans o desde un entorno de scripts.
Proceso de escritura de un bean • La clase debe de cumplir unos patrones de nombramiento • Los métodos modificadores deben de empezar por set. Public void setColor(Color _color){} • Los métodos consultores deben de empezar por get. Public Color getColor(){}
Proceso de escritura de un bean • Crear una archivo de manifiesto (identifica que la clase es un bean). Manifest-Version; 1.0 Name: SimpleBean.class Java-Bean: True
Proceso de escritura de un bean • Crear un archivo JAR (incluye todas las clases y el archivo de manifiesto) jar cfm SimpleBean.jar manifest.tmp *.class
Proceso de escritura de un bean • Cargar el archivo JAR en el entorno constructor de programas habilitado para Beans (Bean Builder).
Proceso de escritura de un bean • Guarda los cambios en formato XML • Y implementa una clase con: try { InputStream is = new BufferedInputStream( new FileInputStream("tutorial.xml")); XMLDecoder d = new XMLDecoder(is); Object o = d.readObject(); } catch (IOException ex) { System.out.println(ex.getMessage()); }
Ejemplos • Calendario • Casero
Bibliografía • http://java.sun.com/products/javabeans/docs/spec.html (especificación sobre los JavaBeans) • http://java.sun.com/docs/books/tutorial/javabeans/whatis/index.html (tutorial de Sun sobre los JavaBeans) • http://java.sun.com/docs/books/tutorial/javabeans/writingbean/index.html (como compilar un bean) • http://www.toedter.com/en/jcalendar/index.html (ejemplo del calendario) • https://bean-builder.dev.java.net/(software de Bean Builder y tutoriales)
Bibliografía • http://www.javahispano.org (para cualquier asunto sobre Java) • Thinking in Java, Prentice Hall. • Java 2, volumen 2, Prentice Hall.