Logo Studenta

La construcción de compiladores fue una de las primeros dominios donde se han realizado arquitecturas. Otros han sido las interfaces gráficas. Actu...

La construcción de compiladores fue una de las primeros dominios donde se han realizado arquitecturas. Otros han sido las interfaces gráficas. Actualmente se están desarrollando arquitecturas en otros dominios como el financiero, avionica o multimedia. La arquitectura describe la estructura global de un sistema es decir la partición de éste en clases y objetos, la asignación de responsabilidades, la colaboración entre los objetos, y el flujo de control. La arquitectura captura las decisiones de diseño que son comunes al dominio de la aplicación. Las arquitecturas enfatizan la reutilización a nivel de diseño en vez de a nivel de código. Las arquitecturas se diferencian de los patrones en una serie de aspectos: • Los patrones de diseño son más abstractos que las arquitecturas. Las arquitecturas están implementadas en código, lo que solo ocurre con los ejemplos concretos de los patrones. Los patrones se implementan cada vez que se utilizan. • Los patrones son más reducidos que las arquitecturas, algunos autores les denominan microarquitecturas. Una arquitectura puede contener varios patrones, lo contrario en cambio no es cierto. • Los patrones son menos especializados que las arquitecturas. Las arquitecturas tienen siempre un dominio específico de aplicación, en cambio los patrones pueden ser aplicados en diversos dominios. Las arquitecturas han de tener una serie de propiedades para favorecer su reutilización: • Ser Completa. La arquitectura debe soportar las características necesitadas por los ingenieros de las aplicaciones y suministrar implementaciones siempre que sea posible. • Ser Flexible. Las abstracciones podrán ser utilizadas en diversos contextos. • Ser Extensible. Los ingenieros de las aplicaciones podrán fácilmente aumentar o modificar la funcionalidad suministrada. Se suministraran los mecanismos de adaptación que permitan modificar la conducta de la arquitectura por herencia o composición. • Ser Inteligible. Las interfaces con otros subsistemas están claras y la arquitectura está bien documentada y sigue estándares de diseño y codificación. • Tener aisladas las dependencias de plataforma. Normalmente se utilizaran clases intermediarias para conseguir tal efecto. El dominio de solución que una arquitectura resuelve puede ser el de funciones de aplicación, funciones de dominio o funciones de soporte. Las arquitecturas de aplicación conllevan la implementación de una rebanada horizontal de la funcionalidad de un sistema. Ejemplos de estas arquitecturas son aquellas para resolver las interfaces gráficas de un sistema. Las arquitecturas de dominio conllevan la implementación de la solución a los requisitos de un dominio determinado de aplicación. Conllevan por consiguiente la implementación de una rebanada vertical de funcionalidad. Ejemplos de estas arquitecturas se encuentran en dominios financieros, de avionica o control de procesos industriales. Las arquitecturas de soporte suministran los servicios a nivel de sistema tales como aquellos de acceso a ficheros, soporte a computación distribuida o manejadores de dispositivo. Un ejemplo sencillo de arquitectura sería una para construir diagramas de barras con sistema de ejes y escalas. la arquitectura suministra características específicas que el ingeniero de aplicación puede utilizar directamente y una estructura que puede ser extendida por herencia o composición . Al utilizar la arquitectura, el ingeniero de aplicación dispone los elementos gráficos necesarios y un gráfico estándar. Cuando el usuario llama a Grafico_Estandar::Dibujar, Dibujar se llama para cada elemento gráfico y el gráfico y todos sus elementos son dibujados. se puede también cambiar el aspecto del gráfico llamando por ejemplo a Ejes::Poner_Color. Para extender la arquitectura, los ingenieros de aplicaciones derivan nuevos elementos gráficos de Elemento_Gráfico o una de sus subclases. Aunque la orientación a objetos no es ni condición necesaria ni suficiente para obtener beneficios de la reutilización, puede contribuir a ésta. Existen diversos niveles donde la orientación a objetos puede contribuir en la adopción de la reutilización por una organización. Estos son las bibliotecas de clases, los patrones de diseño y las arquitecturas. No siempre los aspectos más novedosos o complejos de los lenguajes de programación, como puede ser la herencia múltiple o la ligadura dinámica son los que mejor contribuyen a la reutilización. La conjunción de los principios básicos de la ingeniería software con la implementación adecuada de las variabilidades de un dominio de aplicación ha dado frecuentemente mejores resultados. Los trabajos en curso en patrones de diseño y arquitecturas de referencia son muy esperanzados al respecto.

Esta pregunta también está en el material:

Reusabilidad_y_Desarrollo_Orientado_a_Ob
15 pag.

Análise Orientada A Objetos Universidad Nacional De ColombiaUniversidad Nacional De Colombia

💡 1 Respuesta

User badge image

Ed IA de Studenta Verified user icon

Parece que su pregunta está incompleta o no está clara. Por favor, reformule su pregunta.

0
Dislike0

✏️ Responder

FlechasNegritoItálicoSubrayadaTachadoCitaCódigoLista numeradaLista con viñetasSuscritoSobreDisminuir la sangríaAumentar la sangríaColor de fuenteColor de fondoAlineaciónLimpiarInsertar el linkImagenFórmula

Para escribir su respuesta aquí, Ingresar o Crear una cuenta

User badge image

Otros materiales