Saltar la navegación

2.- Elementos de un componente: propiedades y atributos.

Caso práctico

Ada continúa explicando a sus compañeros las características más básicas de un componente:

-Un componente software no deja de ser una clase que vamos a tratar de una forma un poco diferente, así que como todas las clases se compone de un conjunto de elementos de tipos básicos a los que se llama atributos, pero si los atributos cumplen ciertas características pasarán a ser propiedades. Por ejemplo, una etiqueta es un componente las características que la definen son sus propiedades como el color o el tipo de la fuente. Además, tiene un conjunto de métodos o funciones que permiten modificar las propiedades, y para implementar la relación con otros elementos software o con el usuario le podemos definir una serie de eventos.

Imagen de Ada, otra vez.
Ministerio de Educación y Formación Profesional (Elaboración propia)



Como en cualquier clase, un componente tendrá definido un estado a partir de un conjunto de atributos. Los atributos son variables definidas por su nombre y su tipo de datos que toman valores concretos. Normalmente los atributos son privados y no se ven desde fuera de la clase que implementa el componente, se usan sólo a nivel de programación.

Las propiedades son un tipo específico de atributos que representan características de un componente que afectan a su apariencia o a su comportamiento. Son accesibles desde fuera de la clase y forman parte de su interfaz. Suelen estar asociadas a un atributo interno.

Las propiedades de un componente pueden examinarse y modificarse mediante métodos o funciones miembro, que acceden a dicha propiedad, y pueden ser de dos tipos:

Imagen que muestra la definición de una clase componente. Está formada por un rectángulo dividido en tres zonas, la superior con el texto “Componente”, en el medio el texto “Propiedad: tipo” y la inferior con el texto “getPropiedad():tipo y debajo “setPropiedad(propiedad:tipo):void”.
Ministerio de Educación y Formación Profesional (Elaboración propia)
  • getter: permiten leer el valor de la propiedad. Tienen la estructura:
public <TipoPropiedad> get<NombrePropiedad>( )

Si la propiedad es booleana el método getter se implementa así:

public boolean is<NombrePropiedad>()
  • setter: permiten establecer el valor de la propiedad. Tiene la estructura:
public void set<NombrePropiedad>(<TipoPropiedad> valor)

Si una propiedad no incluye el método set entonces es una propiedad de sólo lectura.

Por ejemplo, si estamos generando un componente para crear un botón circular con sombra, podemos tener, entre otras, una propiedad de ese botón que sea color, que tendría asociados los siguientes métodos:

public void setColor(String color)
            public String getColor()

Reflexiona

En el lenguaje de programación Java los componentes se crean utilizando la tecnología JavaBeans, que consiste en crear una clase con unas características especiales que puede ser reutilizada después de una manera muy sencilla. De hecho, es común que a un componente Java se le llame Bean. A continuación, tienes un enlace a un ejemplo de creación de un Bean.

Creación de un JavaBean.

Realiza los pasos del tutorial y analiza cuál es la función principal de un componente.