O obxectivo xeral da materia é proporcionar ao estudante os fundamentos teóricos e as competencias prácticas que lle permitan analizar, deseñar, desenvolver e depurar aplicacións informáticas seguindo a paradigma orientado a obxectos. Esta é unha materia eminentemente práctica e neste sentido está orientada ao traballo dos alumnos na realización dun ou varios proxectos. Para facilitar o desenvolvemento dos proxectos na materia tamén se fai unha introdución á “Enxeñaría do Software”. Neste sentido non se ocupa de todas as fases xeralmente recoñecidas nos procesos de desenvolvemento software que van desde a captura e descrición de requisitos ata o espregamento dos sistemas, senón que
se tratarán principalmente as etapas de análises, deseño, implementación e depuración. En primeiro lugar presentarase a enxeñaría do software como disciplina imprescindible para o desenvolvemento de grandes aplicacións informáticas, mostrando os principais retos aos que se enfronta e os conceptos básicos que se utilizarán. A continuación analizaranse os elementos da paradigma orientado a obxectos utilizando elementos e diagramas UML que serán utilizados polos alumnos nos seus desenvolvementos. Para alcanzar este obxectivo xeral os contidos que se verán na materia pódense resumir nos seguintes ítems:
A paradigma Orientado a Obxectos.
Conceptos básicos da orientación a obxectos: clases e obxectos
Encapsulación. Principio de ocultación. Conceptos de desacoplamiento e cohesión
Herdanza, abstracción, polimorfismo e reutilización.
Relacións entre clases: Generalización, asociación e dependencia
Comunicación entre obxectos: métodos, eventos, mensaxes
Persistencia. Almacenamento en ficheiros e en bases de datos
Xeración, captura e procesamento de excepcións Introdución á Enxeñaría do Software
Conceptos básicos da Enxeñaría do Software. Reseña histórica
Introdución e concepto de Ciclo de Vida. Estándar ISO/IEC 12207
Introdución ás metodoloxías de desenvolvemento de software. Clasificación Introdución aos procesos de desenvolvemento de software orientado a obxectos.
Fases principais no desenvolvemento OO: análise, deseño, implementación e probas
Introdución á linguaxe de modelado UML: estrutura e interacción