Red de conocimiento informático - Conocimiento de la instalación - Componentes en ingeniería de software de componentes

Componentes en ingeniería de software de componentes

Los componentes son módulos de software reutilizables orientados a la arquitectura de software. Los componentes son componentes de software reutilizables que se pueden utilizar para construir otro software. Puede ser una clase de objeto encapsulado, un árbol de clases, algunos módulos funcionales, un marco de software (marco), una arquitectura de software (o arquitectura), un documento, un software de análisis, un patrón de diseño (Patrón), etc. En 1995, Ian.oraham dio la siguiente definición de componente: Componente se refiere a un objeto (especificación de interfaz o código binario), que se utiliza para la reutilización y la interfaz está claramente definida [8]. Un componente aparece como un paquete de código de programa lógicamente ajustado con una buena interfaz. Las clases y tipos de datos como el paquete de Ada, Smalltalk-80 y C pueden pertenecer a la categoría de componentes. Sin embargo, los conjuntos de operaciones, procedimientos y funciones no pueden convertirse en componentes incluso si pueden reutilizarse. Los desarrolladores pueden desarrollar nuevos sistemas de aplicaciones ensamblando componentes existentes para lograr la reutilización del software. La tecnología de componentes de software es un factor clave en la reutilización de software y el foco de la investigación sobre tecnología de reutilización de software. (1) Utilidad: Los componentes deben proporcionar funciones útiles;

(2) Usabilidad: Los componentes deben ser fáciles de entender y usar

(3) Calidad (Calidad): componentes y sus; las deformaciones deben funcionar correctamente;

(4) Adaptabilidad: los componentes deben ser fáciles de configurar en diferentes contextos mediante parametrización y otros métodos;

(5) Portabilidad: los componentes deben poder funcionar en diferentes plataformas operativas de hardware y entornos de software.

Calendarios, componentes de flujo de trabajo, componentes de pedidos, controles de interfaz de usuario, etc. pueden ser todos componentes. Los componentes tienen las siguientes características:

(1) Autodescripción: el componente debe poder identificar sus propiedades, métodos de acceso y eventos. Esta información puede permitir que el entorno de desarrollo combine sin problemas componentes de software de terceros.

(2) Personalizable: permite proporcionar un entorno gráfico típico, las propiedades de los componentes del software sólo se pueden configurar a través del panel de control

(3) Integrado: los componentes deben; Ser controlado directamente por el lenguaje de programación. Los componentes también se pueden conectar con lenguajes de scripting o con entornos que acceden a componentes desde el nivel de código. Esta característica permite que los componentes de software se utilicen en proyectos de desarrollo no visuales;

(4) Mecanismo de conexión: Componentes. debe poder generar eventos o Existen otros mecanismos que permiten a los programadores conectarse entre sí semánticamente.

El uso del software de componentes no requiere recompilación, no requiere código fuente y no se limita a un determinado lenguaje de programación. Este proceso se llama reutilización binaria porque se basa en la interfaz en lugar de la reutilización a nivel de código fuente. Aunque los componentes de software deben cumplir con interfaces consistentes, su implementación interna es completamente automática. Por lo tanto, los componentes se pueden crear utilizando lenguajes tanto procedimentales como orientados a objetos.

Dado que la tecnología de componentes se desarrolla en base a tecnología orientada a objetos, es similar a los objetos en el diseño orientado a objetos. Todos están destinados a la reutilización del software y son códigos encapsulados, pero todavía existen grandes diferencias. entre ellos. (1) En el diseño puramente orientado a objetos, los objetos (clases), la encapsulación y la herencia son indispensables, pero no hay necesidad de herencia para los componentes, siempre que se implemente la encapsulación.

(2) From In; En términos de cómo se generan los componentes y objetos, la generación de objetos es un proceso de creación de instancias, que es relativamente simple, mientras que hay muchas formas de generar componentes;

(3) Los componentes son un concepto de diseño y no tienen nada que que tienen que ver con lenguajes de programación específicos Los objetos son conceptos de programación que dependen del lenguaje de programación específico;

(4) No se permite la manipulación directa de los datos en el componente cuando se opera en el componente, y los datos sí. verdaderamente encapsulado.

La operación de los objetos se realiza a través de la parte de la interfaz pública, de modo que se pueda acceder y operar los datos;

(5) La reutilización de objetos en software se realiza mediante herencia, y la reutilización de software por componentes puede No solo se puede lograr mediante la herencia, también se puede lograr mediante referencias durante el ensamblaje.

Por lo tanto, los componentes no son objetos, sino que son similares a los objetos.

Desde una perspectiva mecánica, una estructura se refiere a una forma estructural que puede soportar una determinada fuerza y ​​puede resistir fuerzas que pueden provocar cambios de forma y tamaño. Cada cosa tiene su forma arquitectónica y esta forma arquitectónica refleja su estructura. Una estructura más compleja se compone de muchas partes diferentes, a menudo llamadas bloques de construcción.