1 / 25

Programación de Sistemas 2003: Java Beans

Programación de Sistemas 2003: Java Beans. Christian Lalanne A. Rodrigo Pinto A. Java Beans . Introducción Instalación del Kit BDK1.1 Propiedades y Características importantes de JavaBeans Como crear tus propios Beans Ejemplos: Gauge.jar, Tcanv.jar, Juggler. Introducción.

junior
Download Presentation

Programación de Sistemas 2003: Java Beans

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Programación de Sistemas 2003: Java Beans Christian Lalanne A. Rodrigo Pinto A.

  2. Java Beans • Introducción • Instalación del Kit BDK1.1 • Propiedades y Características importantes de JavaBeans • Como crear tus propios Beans • Ejemplos: Gauge.jar, Tcanv.jar, Juggler

  3. Introducción • Programación por componentes de software • Reutilizacion de codigo • Posibilidad de fabricar componentes de software u ocupar componentes creadas, para luego, ensamblarlos y crear un programa final • Proporciona una herramienta de diseño facil de usar: BeanBox • En general, estas nuevas tecnologías que permiten a los programadores construir entornos de programación visual, se conocen como ingeniería de software basado en componentes, En Java, esta tecnología es denominada JavaBeans

  4. Como empezar a utilizar BDK 1.1 • Bajar el kit de desarrollo Java Beans (BDK) disponible en: http://java.sun.com/products/javabeans/software/ • Descomprimir • Linux?: ejecutar \run.sh • Windows?: ejecutar run

  5. Características principales de los Beans (Introspección) • Capacidad de informar dinámicamente a las herramientas de desarrollo visual de métodos , propiedades y tipo de eventos que pueden generar o a los que pueden responder las componente de software. • La clase Introspector de java.beans proporciona un conjunto de métodos estáticos para que las herramientas obtengan información, métodos y eventos de un componente de software.

  6. Características principales de los Beans (Introspección) • Esquemas de reflexión y diseño:Básicamente la clase introspector “lee” los nombres de los métodos de una clase de componentes, identifica las propiedades de un componente de software y también la generación de eventos de este componente, basándose en el paquete java.lang.reflect que ofrece la posibilidad de identificar los campos y métodos de una clase; esto, en ausencia de información explicita • Especificación Explicita:la información sobre una componente de software puede ser proporcionada (optativo) por una clase especial de información sobre componentes de software que implementa la interfaz BeanInfo.

  7. Características principales de los Beans (Introspección) • Esta interfaz (BeanInfo) proporciona métodos para transportar explícitamente información sobre los métodos, propiedades y eventos de una componente de software. La clase Introspector reconoce las clases BeanInfo por su nombre. (por ejemplo, si una componente de software se ha implementado a través de la clase math, la clase BeanInfo relacionada se llamaría mathBeanInfo).

  8. Propiedades de los componentes de Software (Definición) • Son las características de apariencia y comportamiento de un Bean, pueden ser modificadas durante el diseño • En general, existen 3 tipos de propiedades de los componentes de software: indexadas, limitadas y restringidas • Propiedades indexadas:es una propiedad que puede tomar un arreglo de valores • Propiedades limitadas:aquella que alerta a otros objetos cuando su valor cambia • Propiedades restringidas:el objeto notificado puede confirmar o denegar el cambio

  9. Propiedades de los componentes de Software (Eventos) • Los Beans utilizan los eventos para comunicarse con otros Beans. Un Bean que requiere recibir eventos (oyente) registra su interés con un Bean que lanza eventos (fuente) • Las Herramientas de desarrollo pueden examinar un Bean para determinar que eventos puede disparar y cuales puede manejar.

  10. Propiedades de los componentes de Software (Persistencia) • Permite a los Beans guardar su estado y restaurarlo posteriormente • Los Java Beans utilizan la serialización de objetos para soportar la persistencia.

  11. Propiedades de los componentes de Software (Métodos) • Los métodos de un Bean no son diferentes a los métodos de Java, y pueden ser llamados desde otros Beans • Existen 2 tipos: obtención y establecimiento • Los nombres de métodos de obtención comienzan por get. • Los nombres de métodos de establecimiento comienzan por set.

  12. Métodos utilizados con propiedades simples • Los metodos get...() y set...() se ocupan para obtener y setear propiedades simples de un Bean. Ej: Public nametype getname(). Public void setname (nametype namevalue). • Una propiedad es de solo lectura o solo escritura si falta uno de los métodos de acceso anteriores.

  13. Métodos utilizados con propiedades indexadas • Un componente de software que tenga una propiedad indexada poseerá métodos que admitan lectura y escritura de elementos individuales del arreglo o del arreglo completo de propiedades. Ej: Public widgettype getwidget(int index). Public widgettype[] getwidget(). Public void setwidget(int index, widgettype widgetvalue). Public void setwidget(widgettype[] widgetvalues).

  14. Métodos utilizados con propiedades limitadas • Las propiedades limitadas requieren que se notifique a ciertos objetos cuando estas experimentan un cambio. • La notificación del cambio se realiza a través de un PropertyChangeEvent. • Los objetos que deseen ser notificados del cambio en una propiedad limitada deberán registrarse como auditores.

  15. Métodos utilizados con propiedades limitadas Así, el componente de software que este implementando la propiedad limitada suministrará métodos de esta forma: Public void addPropertyChangeListener(PropertyChangeListener 1). Public void removePropertyChangeListener(PropertyChangeListener 1). • Para registrar auditores en el PropertyChangeEvent de una propiedad específica se deben proporcionar los métodos siguientes. Public void addPropertyNameListener(PropertyChangeListener 1). Public void removePropertyNameListener(PropertyChangeListener 1).

  16. Métodos utilizados con propiedades limitadas • En estos métodos, PropertyName se sustituye por el nombre de la propiedad limitada. • Los objetos que implementan la interfaz PropertyChangeListener, deben implementar el método PropertyChange(). Este método lo invoca el componente de software para todos sus auditores registrados, con el fin de informarles de un cambio en una propiedad. • Los métodos que se utilizan con propiedades simples e indexadas que veíamos anteriormente se aplican también a las propiedades limitadas

  17. Métodos utilizados con propiedades restringidas • Para acceder a propiedades restringidas, se ofrecen los siguientes métodos de registro de eventos: Public void addVetoableChangeListener(VetoableChangeListener 1). Public void removeVetoableChangeListener (VetoableChangeListener 1). Public void addPropertyNameListener(VetoableChangeListener 1). Public void removePropertyNameListener(VetoableChangeListener 1).

  18. Métodos utilizados con propiedades restringidas • Los objetos que implementan la interfaz VetoableChangeListener deben implementar el método vetoablechange(). • Este método lo invoca el componente de software para todos sus auditores registrados con el fin de informarles del cambio de una propiedad. • Todo objeto que no apruebe el cambio en una propiedad puede arrojar un PropertyVetoException dentro del método vetoablechange() para informar al componente cuya propiedad restringida hubiera cambiado de que el cambio no se ha aprobado.

  19. Métodos utilizados con propiedades restringidas • Los métodos que se utilizan con propiedades simples e indexadas que veíamos anteriormente se aplican también a las propiedades restringidas

  20. Ejemplos: • Juggler • SimpleBean

  21. Convertir una clase en un Bean • Para convertir cualquier clase creada en un Bean, debemos seguir ciertas reglas: • Debe poderse instanciar: no se puede convertir una interfaz o una clase abstracta en un Bean. • Debe tener un constructor predeterminado o constructor por defecto ej: si la clase se llama Mybean, debe proporcionar un constructor Mybean( ).

  22. Convertir una clase en un Bean • Debe ser persistente: Debe implementar la interfaz Serializable o la interfaz Externalizable, que permiten que se copie como una serie de bytes en un flujo.

  23. Ejemplos: • Gauge.jar • Tcanv.jar

  24. Las clases e interfaces de los paquetes Java.beans están organizadas en las categorías de: soporte de diseño, soporte de introspección y soporte de cambios en el manejo de eventos. • La especificación de estas clases (métodos disponibles, etc), se encuentran en la Documentación del proyecto disponible en http://alumnos.elo.utfsm.cl/~wayne

  25. Preguntas

More Related