Índice
Técnicas de Programación
Asignatura
| Modalidad | Obligatoria |
| Área | Especialización |
| U.C: | 3 |
| Código | 2120360000320 |
Justificación
La solución de problemas complejos en ingeniería y en el área de integración de sistemas usualmente requiere la creación de programas de computadora. Para realizar esta tarea es necesario dominar los fundamentos de la programación, de manera tal que sea posible realizar programas eficientes, mantenibles, portables y reutilizables.
Objetivos del Curso
Dominar los aspectos teóricos, metodológicos y tecnológicos relacionados con la creación de programas de computadora. Estar en capacidad de diseñar e implementar programas de computadora orientados a la solución de problemas complejos en ingeniería.
Prerequisitos
No hay prerequisitos para este curso.
Contenido Programático
Unidad 1: Introducción a la computación
- Conceptos básicos.
- Algoritmos.
- Aspectos básicos de la arquitectura de computadoras.
- Aspectos básicos de los sistemas operativos.
- Organización de la memoria.
- Lenguajes de programación de alto nivel.
- Compiladores e intérpretes.
Unidad 2: Elementos básicos de la programación
- Tipos de datos.
- Literales.
- Variables.
- Operadores.
- Expresiones.
- Sentencias.
- Subrutinas.
- Tipos de datos definidos por el usuario.
- Tipos parametrizados.
Unidad 3: Fundamentos de la programación orientada a objetos
- Conceptos básicos.
- Encapsulamiento.
- Herencia.
- Polimorfismo.
- Introducción a las estructuras de datos.
Unidad 4: Manejo de excepciones
- Conceptos básicos.
- Prácticas recomendadas.
Unidad 5: Entrada/Salida
- Entrada/Salida síncrona y asíncrona.
- Streams.
- Serialización de objetos.
- Archivos de acceso aleatorio.
Unidad 6: Interfaces gráficas de usuario
- Conceptos básicos.
- Introducción a la programación concurrente.
- Programación manejada por eventos.
- Patrón de diseño publicar/suscribir.
- Componentes.
Metodología de la Enseñanza
Entre las estrategias instruccionales empleadas se incluyen la exposición por parte del docente del contenido teórico y ejemplos de aplicación, y se asignarán trabajos prácticos.
Intensidad Horaria
La intensidad horaria es de 3 horas/semana durante 16 semanas (48 horas/semestre).
Bibliografía
- Knuth, D. Selected papers in computer science. CLSI Publications. 1996.
- Kuth, Donald E., "The art of computer Programming" , Vol 1 - Fundamental Algorithms, 3ra edición, Addison-Wesley, 1997
- Kernighan, Brian y Pike, Rob. The Practice of Programming. Addison Wesley. 1999.
- Knuth, D. The Art of Computer Programming. CLSI Publications. 1996.
- E. Gamma, R. Helm, R. Johnson and J. Vlissides. "Design Patterns. Elements of Reusable Object-Oriented Software. Addison Wesley. 1995.
- Bloch, Joshua. Effective Java. Addison Wesley. 2001.
- Holub, Allen. Taming Java Threads. Apress. 2000.
- The Java Tutorial. A practical guide for programmers. http://java.sun.com. 2001.
