Componente

En las disciplinas de programación e ingeniería, un componente es una parte identificable de un programa o construcción más grande. Por lo general, un componente proporciona una función particular o un grupo de funciones relacionadas. En el diseño de programación, un pulverizador se divide en componentes que a su vez se componen de módulos. Prueba de componentes significa probar todos los módulos relacionados que forman un componente como un grupo para asegurarse de que funcionen juntos.

En la programación orientada a objetos y la tecnología de objetos distribuidos, un componente es un bloque de construcción de programa reutilizable que se puede combinar con otros componentes en la misma u otras computadoras en una red distribuida para formar una aplicación. Los ejemplos de un componente incluyen: un solo botón en una interfaz gráfica de usuario, una pequeña calculadora de interés, una interfaz para un administrador de base de datos. Los componentes se pueden implementar en diferentes servidores en una red y comunicarse entre sí para los servicios necesarios.

Sun Microsystems, cuya interfaz del programa de aplicación JavaBeans define cómo crear un componente, define "un modelo de componente" como el que normalmente proporciona estos tipos principales de servicios:

  • Exposición y descubrimiento de interfaces de componentes. Así, durante el uso de la aplicación, un componente puede interrogar a otro para descubrir sus características y cómo comunicarse con él. Esto permite que diferentes empresas (posiblemente proveedores de servicios independientes) creen componentes que puedan interoperar con los componentes de otras empresas sin tener que saber de antemano exactamente con qué componentes trabajarán.
  • Propiedades de los componentes. Esto permite que un componente haga que sus características sean visibles públicamente para otros componentes.
  • Manejo de eventos. Esto permite que un componente identifique a uno o más componentes que ha ocurrido un evento (como un usuario presionando un botón) para que el componente pueda responder a él. En el ejemplo de Sun, un componente que proporcionaba una interfaz de usuario de botón para una aplicación financiera "generaba" un evento cuando se presionaba el botón, lo que resultaba en un componente de cálculo de gráficos que ganaba el control, formulaba un gráfico y lo mostraba al usuario.
  • Persistencia. Esto permite conservar el estado de los componentes para sesiones de usuario posteriores.
  • Soporte del generador de aplicaciones. Una idea central de los componentes es que no solo serán fáciles y flexibles de implementar en una red distribuida, sino que los desarrolladores pueden crear fácilmente nuevos componentes y ver las propiedades de los existentes.
  • Embalaje de componentes. Dado que un componente puede comprender varios archivos, como iconos y otros archivos gráficos, el modelo de componentes de Sun incluye una función para empaquetar los archivos en un solo formato de archivo que se puede administrar y distribuir fácilmente. (Sun llama a su paquete de componentes un formato de archivo JAR (Java Archive)).