UNIDAD DIDÁCTICA 1. Introducción al paradigma orientado a objetos
1.1 Ciclo de desarrollo del software bajo el paradigma de orientación a objetos: Análisis, diseño y programación orientada a objetos.
1.2 Análisis del proceso de construcción de software: Modularidad.
1.3 Distinción del concepto de módulo en el paradigma orientado a objetos.
1.4 Identificación de objetos como abstracciones de las entidades del mundo real que se quiere modelar.
1.4.1 Descripción de objetos: Conjunto de datos que definen un objeto y conjunto comportamientos que pueden solicitarse a los objetos.
1.4.2 Identificación del comportamiento de un objeto: Concepto del mensaje.
UNIDAD DIDÁCTICA 2. Clases y objetos
2.1 Distinguir el concepto de clase y sus atributos, métodos y mecanismo de encapsulación:
2.1.1 Relación entre interfaz y clase
2.1.2 Distinción de los tipos de datos y clases
2.2 Análisis de los objetos: Estado, comportamiento e identidad:
2.2.1 Análisis de mensajes
2.2.2 Tipos de métodos y su clasificación: Métodos de acceso, de selección o consulta, de construcción, de destrucción.
2.3 Uso de objetos como instancias de clase. Instancia actual (this, self, current).
2.4 Identificación del concepto de programa en el paradigma orientado a objetos. POO = Objetos + Mensajes.
UNIDAD DIDÁCTICA 3. Generalización/Especialización: herencia
3.1 Descripción del concepto de herencia: Simple y múltiple:
3.1.1 Relación de herencia: Características.
3.1.2 Reglas y características que definen una relación de herencia: Regla “Es- un”
3.1.3 Transmisión de atributos y métodos.
3.1.4 Regla de especialización de la superclase en la subclase
3.1.5 Acceso a los atributos de una clase y acoplamiento entre las clases
3.1.6 Utilización de objetos this (current, self u otros) y super.
3.1.7 Leyes de Demeter
3.2 Distinción de la herencia múltiple:
3.2.1 Problemas: Conflictos de nombres, herencia repetida.
3.2.2 Soluciones
3.3 Creación de objetos en la herencia
3.4 Clasificación jerárquica de las clases:
3.4.1 Clase raíz
3.4.2 Clases abstractas
3.4.3 Métodos virtuales
3.4.4 Redefinición de métodos
UNIDAD DIDÁCTICA 4. Relaciones entre clases
4.1 Distinción entre Agregación/Composición.
4.2 Distinción entre Generalización / Especialización.
4.3 Identificación de asociaciones
UNIDAD DIDÁCTICA 5. Análisis del polimorfismo
5.1 Concepto.
5.2 Tipos:
5.3 Polimorfismo en tiempo de compilación (sobrecarga)
5.4 Polimorfismo en tiempo de ejecución (ligadura dinámica)
5.6 Objetos polimórficos
5.7 Comprobación estática y dinámica de tipos
UNIDAD DIDÁCTICA 6. Técnicas de programación estructurada
6.1 Identificación de elementos básicos: constantes, variables, operadores y expresiones.
6.2Análisis de estructuras de control: Secuencial, condicional y de repetición.
6.3 Distinción entre funciones y procedimientos:
6.3.1 Interfaz
6.3.2 Paso de parámetros: por valor y por referencia
6.3.3 Parámetros actuales y formales
6.3.4 Funciones: valor de retorno
6.3.5 Procedimientos
6.3.6 Ámbito de las variables
6.3.7 Almacenamiento de las variables
6.4 Demostración de llamadas a funciones y procedimientos.
6.5 Empleo de llamadas a funciones y procedimientos incluidos en las clases:
6.5.1 Llamadas calificadas y no calificadas (instancia actual)
6.5.2 Paso de parámetros
6.5.3 los atributos de la clase
UNIDAD DIDÁCTICA 7. Estructura de la información
7.1 Enumeración de datos simples: Numéricos (enteros y reales), lógicos, carácter, cadena de caracteres, puntero o referencia a memoria.
7.2 Datos estructurados: Arrays:
7.2.1 Listas enlazadas, pilas y colas
7.2.2 Estructuras
7.2.3 Ficheros
7.2.4 Otras estructuras complejas: Tablas hash e introducción a los árboles y grafos
7.3 Mecanismos de gestión de memoria:
7.3.1 Uso de la gestión automática de memoria
7.3.2 Construcción y destrucción de objetos
7.3.3 Objetos inalcanzables
7.3.4 Recolección de «basura».
7.3.5 Métodos constructores y destructores.
UNIDAD DIDÁCTICA 8. Lenguajes de programación orientados a objetos
8.1 Análisis del lenguaje de programación orientado a objetos y paradigma orientado a objetos:
8.1.1 Lenguajes de programación orientados a objetos
8.1.2 Lenguajes de programación basados en objetos
8.1.3 Lenguajes de programación que utilizan objetos
8.2 Comparación entre los lenguajes de programación orientados a objetos más habituales. Características esenciales.
8.3 Librerías de clases:
8.3.1 Definición de su estructura
8.3.2 Creación y utilización
UNIDAD DIDÁCTICA 9. Implementación del paradigma utilizando un lenguaje de programación orientado a objetos
9.1 Elección del lenguaje.
9.2 Enumeración de los tipos de aplicaciones.
9.3 Herramientas de desarrollo.
9.4 Tipos de datos y elementos básicos característicos del lenguaje. Instrucciones.
9.5 Estudio y utilización de las clases básicas incluidas en la librería de clases.
9.6 Definición de clases:
9.7 Construcción de métodos. Sobrecarga.
9.8 Construcción de atributos.
9.9 Construcción de la interfaz de la clase.
9.10 Construcción de clases incluyendo relaciones de Agregación /Composición y Asociación.
9.11 Construcción de clases con herencia.
9.12 Construcción de clases con herencia múltiple.
9.13 Definición de clases abstractas
9.14 Construcción de clases con herencia incluyendo poliformismo
9.15 Empleo de excepciones.
9.16 Gestión de eventos:
9.16.1 Eventos, fuentes y auditores de eventos
9.16.2 Tipos de eventos. Mecanismos de gestión de eventos
9.16.3 Librerías de clases asociadas
9.17 Empleo de hilos:
9.17.1 Fundamentos
9.17.2 Creación
9.17.3 Prioridad
9.17.4 Comunicación
9.17.5 Sincronización
9.17.6 Estados
9.17.7 Creación y ejecución de hilos en el lenguaje
9.17.8 Librerías de clases asociadas
9.17.9 Programación multihilo
9.18 Definición y análisis de programación en red:
9.18.1 Aplicación cliente servidor
9.18.2 Sockets
9.19 Acceso a bases de datos desde las aplicaciones. Librerías de clases asociadas
Central- Vigo Delegaciones - Pontevedra | Madrid | Sevilla | Barcelona | Canarias |
Centro de formación ICA S.L. , CIF B-36995934 ©
2024 Contactar | Términos de uso | Política de privacidad | Politica de calidad | Politica de seguridad |