UNIVERSIDAD INDUSTRIAL DE SANTANDER Escuela de Matemáticas Asignatura: Docente: Período: Programación II Nayibe Ruíz Chagüi I Semestre 2011 Código e-mail Salon 24176 Requisitos Programación I ruiznayibe@yahoo.com – 300-5683688 Teórica - (CT ) Practica (CT 111) Objetivo y propósitos del Curso Aplicar los fundamentos y conceptos de la programación bajo el enfoque del paradigma orientado a objetos Propósitos del curso: 1. Estudiar los conceptos y características de la programación orientada a objetos. 2. Utilizar las estructuras y componentes de la POO, en la implementación de aplicaciones que permitan dar soluciones a situaciones problemas dadas. 3. Hacer uso de entornos de desarrollo integrado (IDE), que permitan implementar y aplicar el paradigma orientado a objetos. Justificación: Las necesidades organizacionales de información demandan el desarrollo de aplicaciones complejas que hagan uso de mejores estructuras de información y que permitan modelar e implementar soluciones más cercanas al mundo real, bondades que permite la programación orientada a objetos para dar soluciones acordes a dichas necesidades. Una de las bases más importantes en la formación de un matemática es la abstracción y representación de la realidad, su comprensión y la generación de alternativas de solución lógicas que permitan mejorar la calidad de vida de la sociedad. En este proceso, el conocimiento y dominio de las diferentes formas como se almacena la información en el computador y como estas formas ó estructuras se pueden manipular a través de los paradigmas de programación en especial el paradigma de programación orientada a objetos que surge como una alternativa de aprovechar los recursos de almacenamiento a través del uso de la Tecnología de Información (TI). Competencias: El estudiante estará en capacidad de: 1. Realizar abstracciones de la realidad, determinar las clases y objetos a utilizar, así como representarlos mediante la notación UML 2. Diseñar programas orientados a objetos. 3. Implementar programas en un lenguaje de programación orientado a objetos (LPOO) Contenido 1. Funciones y Procedimientos 1.1 Tipos 1.2 Parámetros 1.3 Procedimientos 2. Fundamentos de la Programación Orientada a Objetos (POO) 2.1. Concepto 2.2. Características y propiedades 2.2. Ventajas y limitaciones 2.3. Lenguajes Orientados a objetos (LPOO) 3. Clases e Instancias 3.1. Definición de Clases 3.2. Tipos de acceso 3.3 Objetos y mensajes Entornos de desarrollo integrado (IDE) 4. Constructores y Destructores 4.1 Concepto, memoria dinámica 4.2 Ejemplos y aplicación 5. Creación de programas en forma de proyectos 5.1 Implementación en IDE 6. Polimorfismo 6.1. Concepto 6.2. Sobrecarga y funciones Amigas 7. Herencia 7.1. Tipos de derivación 7.2. Implementación y ejemplos de aplicación 8. Objetos en Disco 8.1. Tipos de Archivos 8.2. Librerías y funciones principales 8.2. Operaciones sobre archivos 9. Entorno de desarrollo Visual 9.1. Elementos y propiedades 9.2. Manejo de eventos 9.3. Formularios 9.4. Implementación 1 UNIVERSIDAD INDUSTRIAL DE SANTANDER Escuela de Matemáticas ESTRATEGIAS PEDAGÓGICAS Este curso se desarrolla mediante exposiciones del profesor con participación de los estudiantes en la discusión de conceptos y solución de problemas con prácticas en el laboratorio de computadores. Las exposiciones teóricas se realizarán en dos horas y las prácticas en tres horas semanales. Las estrategias pedagógicas son: Videos Entorno de desarrollo integrado. Biblioteca de programas ejemplos para que el estudiante los ejecute y analice su código Laboratorios con prácticas diseñadas previamente Trabajos en equipo Enunciados de problemas de mediana complejidad para que el estudiante aplique los conceptos y procedimientos adquiridos en las clases presenciales. Semana 1 Marzo 22-25 2 Marzo 28 – Abril 1 3 Abril 4-8 4 Abril 11-15 PLAN DE ACTIVIDADES SEMANALES Presentación del curso. Repaso de Vectores y Matrices. Ejemplos Funciones, tipos, parámetros y ejemplos de aplicación Fundamentos de la Programación Orientada a Objetos (P.O.O). Ventajas y Limitaciones Lenguajes Orientados a Objetos Definición y declaración de Clases. Tipos de Acceso (público, privado, protegido). Objetos y Mensajes. Uso de Entorno de Desarrollo Integrado C++ SEMANA 5 Abril 25-29 6 Mayo 2 – 6 7 Mayo 9-13 SANTA PRIMER PARCIAL – VIERNES 29 de Abril Realimentación del parcial y ejercicios Constructores y destructores. Memoria dinámica: new y delete Mayo 4 – Plazo máximo REGISTRO PRIMERA NOTA Crear programas en forma de proyectos 8 Mayo 16-20 Polimorfismo, funciones amigas 9 Mayo 23-27 Herencia, tipos de derivación y ejemplos 10 Mayo 30-Junio 3 Continuación de Herencia SEGUNDO PARCIAL – Viernes 3 de Junio 11 Junio 6 - 10 Objetos en disco 12 Junio 13-17 Continuación objetos en disco 13 Junio 20-24 Entorno de desarrollos visuales. Framework de .NET 14 Características de Visual C# 2 UNIVERSIDAD INDUSTRIAL DE SANTANDER Escuela de Matemáticas Junio 27-30 V A C A C I O N E S – Julio 1 - 15 15 Julio 18 -22 Elementos de la interfaz grafica de usuario GUI 16 Julio 25 -29 Programación y manejo de Eventos 17 Agosto 1 - 5 Aplicaciones Finalización de Clases Agosto 5 de 2011 TERCER PARCIAL (Semana de parciales Agosto 8 - 17) Bibliografía: [1] AGUILAR, Luis Joyanes. Programación Orientada a Objetos. McGrawHill [2] CEBALLOS, FRANCISCO JAVIER. Programación Orientada a Objetos con C++. AlfaOmega. [3] DEITEL & DEITEL. Como programar en C++. Prentice Hall [4] EZZEL, Ben. Programación de Gráficos en turbo C++ un enfoque orientado a objetos. Editorial Addison Wesley [5] PERRY, Greg. Aprendiendo Programación Orientada a Objetos con turbo C++ en 21 días. 1ª Edición, Prentice Hall, 1995. [6] FERNANDEZ SASTRE, Sergio M. Fundamentos del diseño y la Programación Orientada a Objetos. 1ª Edición, Thomson Learning, 2001. [7] JAMSA, Kris. C++ Programación Exitosa. AlfaOmega. Tipo % P1 P2 T 25 25 25 Q 25 EVALUACIONES Descripción Primer parcial - Viernes 29 de Abril Segundo Parcial – Viernes 3 de Junio Proyecto Final – Sustentación en Semana de Parciales Corresponden a los laboratorios, talleres y quices que se realizarán durante todo el semestre 3