1 Ficha de Identificación 1.1 Código y Nombre del Curso Universidad del Magdalena Vicerrectoría de Docencia Programación Orientada a Objetos 1.2 Unidad Académica Responsable del Curso 1.3 Ubicación curricular Ingeniería de Sistemas Componente Curricular Pre-Requisitos Co-Requisitos Algoritmos y Programación 1.4 Créditos Académicos Algoritmos y Programación Créditos HAD HTI Proporción HAD:HTI 4 4 128 1:2 1.5 Descripción resumida del curso Esta asignatura esta orientada al manejo de la programación orientada a objetos implementado herramientas potente como java. C++ y LabView los lenguajes orientado a objetos asi como modelado de objetos con UML facilita a los estudiantes tener un enfoque disciplinado del diseño de programas. 1. Elaboración, Revisión y Aprobación Elaboró Revisó Aprobó Página 1 de 5
2 Justificación POO (programación orientada a objetos) El estudiante debe aprender una forma de organizar código y datos que asegura el control sobre la complejidad del proceso de desarrollo de software haciendo los programas más eficientes, donde los objetos son tipos de datos abstractos definidos por el programador, pero donde la potencia real de los objetos reside en las propiedades que soportan herencia, encapsulamiento y polimorfismo junto con los conceptos de objetos, clases y métodos, lenguaje que debe manejar con propiedad un ingeniero de Sistemas. 3 Competencias a Desarrollar 3.1 Competencias Genéricas Aplicar conocimientos en cuanto a metodologías y herramientas de programación de computadores para el análisis y solución de problemas referentes al desarrollo de sistemas informáticos. El estudiante conoce y aplica distintas tecnologías de programación basándose en el paradigma orientado a objetos como fundamento para el desarrollo, ejecución y mantenimiento de aplicaciones informáticas 3.2 Competencias Específicas Entender las diferencias entre el paradigma de programación orientada a objetos y otros paradigmas de programación Diseñar, a partir de la especificación textual de un problema, un conjunto de clases relacionadas entre sí de cuya interacción se obtenga una solución a dicho problema. Conocer la sintaxis de modelamiento, para generar diagramas de clases a partir del análisis de un problema y el diseño de su solución. Implementar programas orientados a objetos utilizando lenguajes de programación Identificar situaciones que encajen con soluciones conocidas para determinados problemas y aplicarlas adaptándolas a cada caso en particular. 4 Contenido y Estimación de Créditos Académicos Unidades Temáticas Temas Tiempos N Nombre N Nombre 1 Introducción a la programación orientada a objetos 1.1 Evolución del software 1.2 Ventajas de la POO 1.3 Lenguajes orientados a objetos 1.4 Aplicaciones de la POO HAD HTI Total T P T P Página 2 de 5
Unidades Temáticas Temas Tiempos N Nombre N Nombre 2 3 4 5 7 8 9 10 Tokens, expresiones y estructuras de control 2.1 Tokens 2.2 Operadores Funciones 3.1 Función principal, llamada y retorno Clases y objetos 3.2 Argumentos y sobrecarga 4.1 Especificación de una clase 4.2 Arrays dentro de una clase 4.3 Funciones miembro 4.4 Arrays de objetos Constructores y destructores 5.1 Concepto Sobrecarga de operadores y conversiones de tipo Herencia: Extensión de clases Punteros, funciones virtuales y polimorfismo Operaciones de entrada/salida en consola Utilización de archivos 11 Plantillas 12 13 5.2 Ejercicios.1 Definición de la sobrecarga de operadores.2 Manipulación de cadenas utilizando operadores.3 Reglas para la sobrecarga de operadores Clases derivadas Tipos de herencias Clases abstractas Punteros 9.1 Operaciones de E/S sin formato 9.2 Operaciones con formato de E/S en la consola 10.1 Clases para operaciones con flujo de archivos 10.2 Apertura y cierre de un archivo 10.3 Actualización de un archivo 11.1 Plantillas de clases 11.2 Plantillas de funciones Manejo de excepciones 12.1 Conceptos básicos del manejo de excepciones 12.2 Mecanismos de manejo, lanzamiento y captura Manipulación de cadenas 13.1 Creación y manipulación de objetos tipo string 13.2 Comparación e intercambio HAD HTI T P T P Total Total 48 1 32 9 192 Créditos Académicos 4 5 Propuesta Metodológica Página 3 de 5
La metodología implementada en la asignatura será desarrollada con clases teórica prácticas magistrales del profesor. Exposiciones por parte de los estudiantes. Talleres que serán realizados en forma presencial y autónoma. Estrategias y Criterios de Evaluación Se tomará en cuenta como criterio de evaluación el aprendizaje teórico y práctico del estudiante de los lenguajes Java LabView, así como el desarrollo de la competencia de la programación orientada a objetos. Se hará un seguimiento al estudiante mediante la presentación de talleres, trabajos, prácticas y exámenes escritos. 7 Recursos Educativos N Nombre Justificación 1 Textos y revistas Para el estudio de conceptos y ejemplos y realización de ejercicios competentes 2 Sala de Computadores Para el desarrollo practico de los componentes de la asignatura 3 Software Para el desarrollo e implementación de las distintas soluciones propuestas durante las temáticas 4 Conexión a Internet Estudio de temáticas a través de la web 8 Referencias Bibliográficas 8.1 Libros y materiales impresos disponibles en la Biblioteca y Centros de Documentación de la Universidad [1] Wu Java 2 programación orientada a objetos Mc Graw Hill [2] Deitel y Deitel Como programar en java Prentice Hall [3] Java 2 Edición editorial Kimpres Cesar Becerra [4] Java Biblioteca del programador Suleiman Mc Graw Hill [5] LabView i Autor Antonio Manuel Lázaro Editorial Thomson Learning [] C++ Un enfoque orientado a objetos. Luis Joyanes Aguilar [7] Métodos orientados a objetos: consideraciones prácticas. Martin, James. Odell, James. Prentice-Hall Hispanoamericana, 1997. [8] Análisis y diseño orientados a objetos. Martin, James. Odell, James. Prentice Hall, 1994. [9] Java con programación orientada a objetos y aplicaciones en la www. Wang, Paul S. m. International Editores, 2000. [10] Programacion orientada a objetos. Joyanes, Luis. McGraw Hill Osborne, 1998. Página 4 de 5
8.1 Libros y materiales impresos disponibles en la Biblioteca y Centros de Documentación de la Universidad [11] Introducción a la programación orientada a objetos con java. Wu, C. McGraw Hill, 2001. [12] Programación en java 2: algoritmos, estructuras de datos y programación orientada a objetos. McGraw Hill, 2002. [13] Construcción de software orientada a objetos. Meyer, Bertrand. Prentice Hall, 2002. [14] Introducción a la programación con JAVA: Un enfoque orientado a objetos. Arnow, David. Weiss, Gerald. Adisson Wesley, 2000. 8.2 Libros y materiales digitales disponibles en la Biblioteca y Centros de Documentación de la Universidad [15] 8.3 Documentos y Sitios Web de acceso abierto a través de Internet [1] Manual de LabView Natinal Instruments http://www.natinst.com 8.4 Otros Libros, Materiales y Documentos Digitales [17] Página 5 de 5