Programación orientada a aspectos informe final de habilitación profesional - Almonacid Arismendi, Rodrigo (Universidad del Bío Bío, 2008)
La presente investigación aborda una antigua problemática consistente en ℗<U+00BF>cómo desarrollar software de calidad?, y una solución innovadora derivada de un nuevo paradigma denominado Programación Orientada a Aspectos (POA), el cual promete responder a ésta pregunta de forma eficaz y eficiente.Para realizar un acabado análisis acerca de qué es la POA se ha planteado el proyecto en términos de un objetivo principal, el cual apunta a evaluar el enfoque de Programación Orientada a Aspectos a través del estudio minucioso de sus antecedentes teóricos y elementos conceptuales además de la realización de una aplicación basada tanto en la Programación Orientada a Aspectos como en la Programación Orientada a Objetos y poder así conocer el impacto de este nuevo paradigma a través de la aplicación de un conjunto de métricasEl objetivo anteriormente mencionado se va cumpliendo de acuerdo al contenido de cada capítulo y a la estructura que éstos presentan.Inicialmente el proyecto se encuentra enfocado a describir cómo el software ha ido evolucionando a través de diferentes estilos de programación, analizando ventajas y desventajas de cada estilo, siempre con la intención de obtener mayor modularidad, separación de conceptos y rehusabilidad del código. Hasta llegar a lo que hoy en día es el paradigma de programación predominante, es decir, la Programación Orientada a Objetos (POO) y como ésta, aun siendo considerablemente mejor que los estilos anteriores no soluciona totalmente el problema de una adecuada separación de conceptos.Posteriormente para demostrar que la orientación a aspectos mejora el tratamiento de los conceptos en una aplicación, se presenta un caso de estudio desarrollado en ambas tecnologías, para ello se comienza exponiendo en detalle el diseño y construcción orientado a objetos versus el diseño y construcción orientado a aspectos, comenzando por el análisis de sus respectivos diagramas de clases hasta llegar al uso de los patrones utilizados en cada implementación.Para finalizar se realiza un profundo análisis de ambas implementaciones demostrando a través de métricas las ventajas de utilizar Programación Orientada a Aspectos en el desarrollo de una aplicación.