PDF de programación - Tema 4: Tecnologías de componentes - Programación Avanzada

Imágen de pdf Tema 4: Tecnologías de componentes - Programación Avanzada

Tema 4: Tecnologías de componentes - Programación Avanzadagráfica de visualizaciones

Publicado el 19 de Enero del 2021
1.233 visualizaciones desde el 19 de Enero del 2021
712,7 KB
38 paginas
Creado hace 16a (13/11/2007)
Tecnologías de 
componentes

Tema 4: Tecnologías de 

componentes

1.Programación orientada a componentes
2.Características de un componente
3.JavaBeans
4.Aspectos avanzados de las propiedades
5.Generación de eventos
6.Componentes visuales
7.Descripción detallada de beans

Tecnologías de 
componentes

Programación orientada a componentes
●A pesar de la aparente evolución que ha sufrido la 
programación a lo largo de los últimos 40 años, el 
desarrollo de una aplicación continúa siendo una 
actividad costosa en tiempo y dinero, y los errores en 
el producto final son frecuentes
●El problema es que el nivel de reutilización sigue 
siendo muy escaso, a pesar de la multitud de librerías, 
toolkits y frameworks existentes

Programación 
orientada a 
componentes

Tecnologías de 
componentes

●El uso de librerías gratuitas/comerciales presenta 
varios inconvenientes:
● Su instalación puede ser compleja
● Es frecuente que tengan dependencias con otras librerías
● Suelen tener una aplicación demasiado general: EEDD, GUIs, comunicación por 

red, etc. pero rara vez solucionan aspectos de un problema concreto

● Aunque es evidente que ahorran trabajo, sigue siendo necesario una gran 

cantidad de programación, aunque a otro nivel

de un proyecto con un plazo de ejecución limitado

● Pueden requerir un tiempo de aprendizaje largo, incompatible con la realización 
●Estos inconvenientes impiden la generalización de la 
reutilización de código existente en el desarrollo de 
software
●Por tanto en general cada nuevo proyecto sigue 
requiriendo la escritura de una gran cantidad de 
código original

Programación 
orientada a 
componentes

Tecnologías de 
componentes

●En cambio, en otras ingenierías como la electrónica el 
grado de reutilización es altísimo
●En este ámbito, la construcción de un dispositivo 
electrónico se reduce a la integración de la manera 
adecuada de distintos componentes comerciales.
●Existe fabricantes especializados en la fabricación de 
componentes y otros en la de dispositivos finales 
●El producto final obtenido es de calidad y se realiza 
en un tiempo relativamente corto

Programación 
orientada a 
componentes

Tecnologías de 
componentes

●La solución a la crisis del software pasa por cambiar 
el modelo de desarrollo a un desarrollo orientado a 
componentes
●Se basa en la construcción de una aplicación a partir 
de componentes software comerciales o gratuitos ya 
existentes, limitando al mínimo necesario el desarrollo 
de código nuevo
●Para que este cambio se produzca es necesaria la 
creación de un mercado amplio de componentes 
software de calidad y con un ámbito de aplicación 
general

Programación 
orientada a 
componentes

Tecnologías de 
componentes

●También será necesaria la adopción de una 
arquitectura estandarizada que garantice la 
interoperatividad de los componentes en distintas 
plataformas, lenguajes de programación y entornos de 
desarrollo 
●La implantación de este modelo tiene multiples 
beneficios
● El desarrollo será mucho más sencillo y en un tiempo y con un coste menores
● La posibilidad de errores es mínima ya que los componentes son sometidos a un 

vendiendo componentes a otras empresas

riguroso control de calidad antes de ser comercializados

● Las empresas de desarrollo especializadas pueden obtener ingresos adicionales 

Programación 
orientada a 
componentes

Tecnologías de 
componentes

●También será necesaria la adopción de una 
arquitectura estandarizada que garantice la 
interoperatividad de los componentes en distintas 
plataformas, lenguajes de programación y entornos de 
desarrollo 
●La implantación de este modelo tiene multiples 
beneficios
● El desarrollo será mucho más sencillo y en un tiempo y con un coste menores
● La posibilidad de errores es mínima ya que los componentes son sometidos a un 

vendiendo componentes a otras empresas

riguroso control de calidad antes de ser comercializados

● Las empresas de desarrollo especializadas pueden obtener ingresos adicionales 

Programación 
orientada a 
componentes

Tecnologías de 
componentes

Características de un componente
●Un componente debe tener las siguientes 
características:
● Es una unidad software compilada reutilizable, con una interfaz bien definida
● Se distribuye en un único paquete instalable que contiene en sí todo lo necesario 

para su funcionamiento, con ninguna o muy pocas dependencias con otros 
componentes o librerías

● Puede estar implementado en cualquier lenguaje de programación y ser utilizado 

también para el desarrollo en cualquier lenguaje de programación

● Normalmente es un producto comercial de calidad, realizado por un fabricante 

especializado. Por supuesto pueden existir componentes gratuitos

Características de un 
componente

Tecnologías de 
componentes

●Un componente puede ser implementado mediante 
cualquier lenguaje de programación, aunque los 
lenguajes orientados a objetos son especialmente 
adecuados para este fín 
●El entorno de desarrollo es ahora más que un simple 
editor de código. Un entorno de desarrollo orientado a 
componentes debe facilitar la instalación de 
componentes y su configuración e integración en una 
aplicación. El código fuente adicional necesario es 
mínimo

Características de un 
componente

Tecnologías de 
componentes

●Existen tres tecnologías de componentes 
predominantes en la actualidad e incompatibles entre 
sí:
● VBX/OCX/ActiveX de Microsoft. Los VBX surgieron como una forma de poder 
distribuir controles entre los desarrolladores de VisualBasic. VisualBasic puede 
ser considerado como el primer entorno de desarrollo orientado a componentes 
que tuvo realmente éxito y aceptación. Los OCX y ActiveX son evoluciones 
posteriores de los VBX

● VCL de Borland. Es la tecnología de componentes utilizados por los entornos de 

desarrollo Delphi y C++ Builder. Curiosamente estos dos entornos también 
permiten la utilización de componentes OCX y ActiveX

● JavaBeans de Sun. Es la tecnología de componentes basada en Java. En 

principio no permite la utilización de otro lenguaje de programación. Al contrario 
que las otras tecnologías, JavaBeans funciona en cualquier plataforma

Características de un 
componente

Tecnologías de 
componentes

●Las características funcionales de estas tres 
tecnologías son similares
● Los componentes instalados son accesibles en el entorno de desarrollo a través 
de una paleta de componentes y pueden ser “arrastrados” a la aplicación en la 
que estamos trabajando

Características de un 
componente

●En el caso de tratarse de componentes “visuales”, es decir, relacionados con la 
interfaz de usuario, es posible su manipulación de manera interactiva

Tecnologías de 
componentes

Características de un 
componente

●Cada componente expone públicamente un conjunto de propiedades que 
determinan su estado interno. La mayoría de estas propiedades pueden ser 
modificadas de manera interactiva

Tecnologías de 
componentes

Características de un 
componente

●Cada componente genera una serie de eventos que pueden ser capturados. El 
código asociado a estos eventos se realiza en el lenguaje nativo del entorno de 
desarrollo: Visual Basic, Object Pascal, C++, Java, etc.

Tecnologías de 
componentes

Características de un 
componente

Tecnologías de 
componentes

JavaBeans
●JavaBeans es la tecnología de componentes de Java
●Los componentes de JavaBeans se conocen 
simplemente como beans
●En principio un bean es simplemente una clase de 
objetos, aunque con ciertas características especiales:
● Es una clase pública que implementa la interfaz Serializable
● Expone una serie de propiedades que pueden ser leídas y modificadas desde el 

entorno de desarrollo

de acciones

● Expone una serie de eventos que pueden ser capturados y asociados a una serie 
●Aunque los beans han sido pensados para ser 
utilizados desde el entorno de desarrollo, también 
pueden ser utilizados directamente

JavaBeans

Tecnologías de 
componentes

●La apariencia y comportamiento de un bean son 
determinados por sus propiedades
Una propiedad simple queda identificada por un par de 
operaciones con la siguiente forma:

public <TipoProp> get<NombreProp>() { ... }
public void set<NombreProp>(<TipoProp> p) { ... }

●De esta forma queda definida la propiedad 
<NombreProp> de tipo <TipoProp>
●Si una propiedad no incluye la operación set, 
entonces es una propiedad de solo lectura 

JavaBeans

Vamos a transformar la clase TPAviso (tema 2) en un bean. Vamos a incluir tres 
propiedades: Mensaje (mensaje a imprimir), Activa (estado activo o no de la tarea) 
y PeriodoSegs (periodo de ejecución del aviso en segundos)

Tecnologías de 
componentes

import java.util.*;
import java.awt.event.*;
import java.io.Serializable;
import javax.swing.JOptionPane;
import javax.swing.Timer;

public class TPAviso implements ActionListener, Serializable {
int periodoSegs;
String mensaje;
Timer t;

public TPAviso() {
periodoSegs = 60;
t = new Timer(1000 * periodoSegs, this);
}

public TPAviso(String aMensaje, int aPeriodoSegs) {
periodoSegs = aPeriodoSegs;
mensaje = aMensaje;
t = new Timer(1000 * periodoSegs, this);
}

public void actionPerformed(ActionEvent e) {
JOptionPane.showMessageDialog(null, mensaje, "Aviso",
JOptionPane.INFORMATION_MESSAGE);
setActiva(false);
}

JavaBeans

Propiedad
Activa

Propiedad
Mensaje

Propiedad
Periodo

public void setActiva(boolean valor) {
if (valor == true)

t.start();

else

t.stop();
}

public boolean getActiva() {
return t.isRunning();
}

public void setMensaje(String aMensaje) {
mensaje = aMensaje;
}

public String getMensaje() {
return mensaje;
}

public void setPeriodoSegs(int aPeriodoSegs) {
periodoSegs = aPeriodoSegs;
t.setInitialDelay(1000 * periodoSegs);
if (t.isRunning()) {
  • Links de descarga
http://lwp-l.com/pdf18727

Comentarios de: Tema 4: Tecnologías de componentes - Programación Avanzada (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad