¿Qué quieres aprender?

Programación orientada a objetos (MF0227)

Programación orientada a objetos (MF0227)

Criteria Recursos Humanos

Curso subvencionado para desempleados presencial

Tres Cantos (Madrid)


Gratis

Duración : 3 Meses

Módulo Formativo perteneciente al Certificado de Profesionalidad de “Programación orientada a objetos y bases de datos relacionales” (IFCD0112). Los Módulos Formativos de este Certificado de Profesionalidad pueden realizarse en cualquier orden. Una vez superados todos los Módulos Formativos se podrá acceder a las prácticas en empresa y obtener la titulación.

¿Quieres hablar con un asesor sobre este curso?

Sedes

Localización

Fecha inicio

Tres Cantos

Objetivos

Dominar los conceptos fundamentales del paradigma orientado a objetos. Desarrollar clases aplicando los fundamentos del paradigma Orientado a Objetos. Aplicar los conceptos básicos del modelo de programación web. Realizar conexiones con bases de datos relacionales Manejar las herramientas de ingeniería de software. Verificar la corrección de las clases desarrolladas mediante la realización de pruebas. Elaborar la documentación completa relativa a las clases desarrolladas y pruebas realizadas. Realizar modificaciones de clases existentes por cambios en las especificaciones. Desarrollar interfaces de usuario en lenguajes de programación orientados a objeto, a partir del diseño detallado.

A quién va dirigido

Personas desempleadas que deseen obtener la titulación de Certificado de Profesionalidad en “Programación orientada a objetos y bases de datos relacionales” (IFCD0112).

Requisitos

Estar en situación de desempleo.

Temario completo de este curso

Principios de la programación orientada a objetos.

  1. Introducción al paradigma orientado a objetos.
    • Ciclo de desarrollo del software bajo el paradigma de orientación a objetos: Análisis, diseño y programación orientada a objetos.
    • Análisis del proceso de construcción de software: Modularidad.
    • Distinción del concepto de módulo en el paradigma orientado a objetos.
  2. Clases y objetos.
    • Distinguir el concepto de clase y sus atributos, métodos y mecanismo de encapsulación.
    • Análisis de los objetos: Estado, comportamiento e identidad.
    • Uso de objetos como instancias de clase. Instancia actual (this, self, current).
    • Identificación del concepto de programa en el paradigma orientado a objetos. POO = Objetos + Mensajes.
  3. Generalización/Especialización: herencia.
    • Descripción del concepto de herencia: Simple y múltiple.
    • Distinción de la herencia múltiple.
    • Creación de objetos en la herencia.
    • Clasificación jerárquica de las clases.
  4. Relaciones entre clases.
    • Distinción entre Agregación/Composición.
    • Distinción entre Generalización/Especialización.
    • Identificación de asociaciones.
  5. Análisis del polimorfismo.
    • Concepto.
    • Tipos.
    • Polimorfismo en tiempo de compilación (sobrecarga).
    • Polimorfismo en tiempo de ejecución (ligadura dinámica).
    • Objetos polimórficos.
    • Comprobación estática y dinámica de tipos.
  6. Técnicas de programación estructurada.
    • Identificación de elementos básicos: constantes, variables, operadores y expresiones.
    • Análisis de estructuras de control: Secuencial, condicional y de repetición.
    • Distinción entre funciones y procedimientos.
    • Demostración de llamadas a funciones y procedimientos.
    • Empleo de llamadas a funciones y procedimientos incluidos en las clases.
  7. Estructura de la información.
    • Enumeración de datos simples: Numéricos (enteros y reales), lógicos, carácter, cadena de caracteres, puntero o referencia a memoria.
    • Datos estructurados: Arrays.
    • Mecanismos de gestión de memoria:.
  8. Lenguajes de programación orientados a objetos.
    • Análisis del lenguaje de programación orientado a objetos y paradigma orientado a objetos.
    • Comparación entre los lenguajes de programación orientados a objetos más habituales. Características esenciales.
    • Librerías de clases.
  9. Implementación del paradigma utilizando un lenguaje de programación orientado a objetos.
    • Elección del lenguaje.
    • Enumeración de los tipos de aplicaciones.
    • Herramientas de desarrollo.
    • Tipos de datos y elementos básicos característicos del lenguaje. Instrucciones.
    • Estudio y utilización de las clases básicas incluidas en la librería de clases.
    • Definición de clases.
    • Construcción de métodos. Sobrecarga.
    • Construcción de atributos.
    • Construcción de la interfaz de la clase.
    • Construcción de clases incluyendo relaciones de Agregación /Composición y Asociación.
    • Construcción de clases con herencia.
    • Construcción de clases con herencia múltiple.
    • Definición de clases abstractas.
    • Empleo de excepciones.
    • Gestión de eventos:
    • Empleo de hilos.
    • Definición y análisis de programación en red.
    • Acceso a bases de datos desde las aplicaciones. Librerías de clases asociadas.

Modelo de programación web y bases de datos.

  1. Introducción al desarrollo de aplicaciones en el modelo de programación web.
    • Análisis de la arquitectura web: Cliente ligero, servidor web, servidor de aplicaciones, servidor de datos.
    • Enumeración de protocolos y tecnologías habituales.
    • Análisis de los modelos de programación estándares de facto.
    • Uso de componentes orientados a objeto como base en el desarrollo deaplicaciones en el modelo de programación web.
  2. Arquitectura multicapa (n-tier).
    • Análisis de la arquitectura multicapa.
    • Distinción y estudio del modelo de tres capas en web: presentación, aplicación y datos.
    • Diseño de arquitecturas de aplicación basadas en el modelo multicapa.
    • Análisis del concepto de lógica de negocio y significado de la capa lógica.
  3. La capa de presentación.
    • Descripción de la capa de presentación: El lenguaje de hipertexto.
    • Descripción de la capa de presentación avanzada: Lenguajes de scripting y lenguaje de hipertexto dinámico.
    • Análisis de lenguajes orientados a la preparación de la capa de presentación y a la ejecución de solicitudes desde clientes ligeros web. (JSP, Servlets, ASP, PHP).
  4. Diseño de bases de datos relacionales.
    • Definición de bases de datos relacionales.
    • Diseño de bases de datos en varios niveles.
    • Análisis de los distintos tipos de relaciones y su implementación en base de datos.
    • Descripción del lenguaje de acceso a base de datos.
    • Descripción de correlaciones entre el modelo relacional y modelo orientado a objetos.
    • Nociones sobre el almacenamiento de objetos en las bases de datos relacionales.
  5. Acceso a bases de datos relacionales: capa de acceso a datos.
    • Análisis del API de acceso a la base de datos.
    • Nivel controlador.
    • Análisis del nivel aplicación.
    • Establecimiento de la conexión con una base de datos.
    • Operar sobre la base de datos. Sentencias del lenguaje de acceso a base de datos. Objetos que permiten ejecutar una consulta. Objetos que permiten manipular el resultado de una consulta.
    • Integración de los tipos de datos propios del lenguaje de acceso a base datos en el lenguaje de programación de la aplicación.
    • Procedimientos almacenados.
    • Transacciones distribuidas.
  6. Lenguajes de definición de datos.
    • Conceptos básicos, nociones y estándares.
    • Lenguajes de definición de datos (DDL, SQL) y aplicación en SGBD actuales.
    • Discriminación de los elementos existentes en el estándar SQL-92 de otros elementos existentes en bases de datos comerciales.
    • Sentencias de creación: CREATE.
    • Sentencias de modificación: ALTER.
    • Sentencias de borrado: DROP, TRUNCATE.
  7. Manipulación de los datos.
    • Lenguaje de manipulación de datos (DML SQL).
    • Consultas de datos: SELECT.
    • Inserción de datos: INSERT.
    • Modificación de datos: UPDATE.
    • Eliminación de datos: DELETE.
    • Agregación de conjuntos de datos para consulta: JOIN, UNION.
    • Subconsultas.

El ciclo de vida del desarrollo de aplicaciones.

  1. Proceso de ingeniería del software.
    • Distinción de las fases del proceso de ingeniería software: especificación, diseño, construcción y pruebas unitarias, validación, implantación y mantenimiento.
    • Análisis de los modelos del proceso de ingeniería: modelo en cascada, desarrollo evolutivo, desarrollos formales, etc.
    • Identificación de requisitos: concepto, evolución y trazabilidad.
    • Análisis de metodologías de desarrollo orientadas a objeto.
    • Resolución de un caso práctico de metodologías de desarrollo que utilizan UML.
    • Definición del concepto de herramientas CASE.
  2. Planificación y seguimiento.
    • Realización de estimaciones.
    • Planificaciones: modelos de diagramado. Diagrama de Gantt.
    • Análisis del proceso del seguimiento: Reuniones e Informes.
  3. Diagramado.
    • Identificación de los principios básicos de UML.
    • Empleo de diagramas de uso.
  4. Desarrollo de la GUI
    • Análisis del modelo de componentes y eventos.
    • Identificación de elementos de la GUI.
    • Presentación del diseño orientado al usuario. Nociones de usabilidad.
    • Empleo de herramientas de interfaz gráfica.
  5. Calidad en el desarrollo del software
    • Enumeración de criterios de calidad.
    • Análisis de métricas y estándares de calidad.
  6. Pruebas
    • Identificación de tipos de pruebas.
    • Análisis de pruebas de defectos: Pruebas de caja negra. Pruebas estructurales.
  7. Excepciones
    • Definición. Fuentes de excepciones. Tratamientos de excepciones. Prevención de fallos. Excepciones definidas y lanzadas por el programador.
    • Uso de las excepciones tratadas como objetos.
  8. Documentación
    • Como producir un documento.
    • Estructura del documento.
    • Generación automática de documentación.
Ver más