Lenguaje de programación C++

Presentación

La utilización de la orientación a objetos permite el desarrollo de aplicaciones que cada día se hace más común, debido a las facilidades que esta proporciona, sin embargo la elección de la herramienta (lenguaje) que se utilizará es un punto que debe ser tomado en cuenta, ya que si no permite aplicar los conceptos de la orientación a objetos, todo el trabajo de análisis y diseño no habrá servido.

C++ es un potente lenguaje de programación compilado y orientado a objetos que permite programar compiladores, sistemas operativos, juegos, procesadores de texto, aplicaciones de bases de datos etc. Hoy en día uno de los principales lenguajes para la programación de aplicaciones y sistema completos.

OBJETIVO

El participante identificará los aspectos fundamentales de la programación orientada a objetos y desarrollará programas de propósito general, robustos y de calidad, para poner en práctica los conceptos, técnicas y metodologías aprendidas.

PERFIL DE INGRESO

El curso está dirigido a toda persona que desee elaborar aplicaciones en C++ utilizando las técnicas de programación orientadas a objetos.

Los interesados deberán:

TEMARIO

    1. INTRODUCCION A LA PROGRAMACIÓN ORIENTADA A OBJETOS
      1. Definición de programa
      2. Programación modular y estructurada
      3. CASE
      4. Manejo de la información
      5. Enfoque orientado a objetos
      6. Objetos de software
      7. Mensajes
      8. Clases
      9. Creando patrones con clases
      10. Heredando información de la clase
      11. Jerarquía de Clases
      12. Polimorfismo
      13. Programando con objetos
      14. Tipos de datos abstractos
      15. Implementación de tipos de datos abstractos
    2. EL AMBIENTE DE DESARROLLO
      1. Editor
      2. Compilador
      3. Depurador
      4. Otros componentes del ambiente de desarrollo
    3. TIPOS DE DATOS Y OPERADORES
      1. Fundamentales y derivados
      2. Derivados
    4. FUNCIONES
      1. Introducción
      2. Prototipos
      3. Definición
      4. Paso de punteros a funciones
      5. Paso de arreglos a funciones
      6. Argumentos a main( )
      7. Llamada por valor vs llamada por referencia
      8. Paso de argumentos por valor
      9. Paso de argumentos por referencia mediante el empleo de punteros
      10. Parámetros por referencia
      11. Devolución por referencia
      12. Restricciones en el uso de referencias
      13. Sobrecarga de funciones
      14. Argumentos por defecto de una función.
    5. CLASES
      1. Introducción
      2. Definición
      3. Alcance de clase y acceso a miembros
      4. Separación de la interfase y a implementación
      5. Control de acceso a miembros
      6. Constructores
      7. Constructores por argumentos por default
      8. Destructores
      9. Usando miembros datos y miembros función
      10. Objetos constantes y funciones miembro constantes
      11. Funciones y clases amiga
      12. Apuntadores this
      13. Memoria dinámica
      14. Miembros estáticos
    6. SOBRECARGA DE OPERADORES
      1. Introducción
      2. Fundamentos de la sobrecarga de operadores
      3. Restricciones en la sobrecarga de operadores
      4. Función operador como miembros de clase vs funciones amigas
      5. Sobrecarga de operadores de inserción de flujo y extracción de flujo
      6. Sobrecarga de operadores unarios
      7. Sobrecarga de operadores binarios
      8. Conversión entre tipos
      9. Sobrecarga de operadores ++ y -.
    7. HERENCIA
      1. Introducción
      2. Clases base y derivados
      3. Miembros protegidos
      4. Conversión forzada de apuntadores de clase base a apuntadores de clase derivada
      5. Funciones miembro
      6. Sobreponiendo miembros de clase base en una clase derivada
      7. Herencia pública, privada y protegida
      8. Clase base directa y clase base indirecta
      9. Constructores y desconstructores en clases derivadas
      10. Conversión implícita de objetos de clase derivada a objetos de clase base
      11. Composición contra herencia
      12. Herencia múltiple
    8. FUNCIONES VIRTUALES Y POLIMORFISMO
      1. Introducción
      2. Tipo de campos y proposiciones switch
      3. Funciones virtuales
      4. Clases concretas y clases abstractas
      5. Polimorfismo
      6. Nuevas clases y ligado dinámico
      7. Destructores virtuales
      8. Polimorfismo, funciones virtuales y ligado dinámico
      9. Manejo de archivos de acceso aleatorio

    DURACIÓN

    El curso tiene una duración de 6 semanas, equivalente a 40 horas.

    FORMA DE TRABAJO

    EVALUACIÓN


    Ejercicios, prácticas y tareas 50%
    Cuestionario 20%
    Participación en foros 10%
    Práctica final 20%

    REQUERIMIENTOS MÍNIMOS

    Deberá tener disponible un equipo de cómputo con las siguientes características:

    HARDWARE:
    SOFTWARE: