TC3037
Programación avanzada Advanced Programming
CIP: 110201  Programación/Programador Computacional   CL-L-U-CA-UDC:  3-0-8-3-3.5       

Disciplina asociada:  

Tecnologías Computacionales

Escuela:  

Por definir

Departamento Académico:   

Por definir

Programas académicos:   

Requisitos:  

(Haber Aprobado TC1005 y Estar Cursando TC2008)

Equivalencia:  

No tiene.

Intención del curso en el contexto general del plan de estudios:  

Es un curso de programación avanzada en el lenguaje de programación C para resolver problemas a nivel de los sistemas operativos, mediante el cual el alumno adquiere la habilidad para diseñar y programar las soluciones a esos problemas, en un lenguaje de bajo nivel dependiente de la plataforma, usando correctamente el API del sistema operativo UNIX o sistemas similares.

 

Objetivo general de la Unidad de Formación:  

 

Al finalizar este curso el alumno tendrá el conocimiento necesario para dar solución a problemas de programación a nivel del sistema operativo, con énfasis en UNIX, usando el lenguaje de programación C. El curso brindará las habilidades necesarias para diseñar y programar soluciones con técnicas - entre otras - de administración de memoria, de programación concurrente para el manejo de procesos e hilos, técnicas para el manejo de funciones de entrada/salida y de mecanismos IPC para la programación con sockets.

Técnica didáctica sugerida:  

Aprendizaje basado en problemas

Bibliografía sugerida:  

LIBROS DE TEXTO:
* W. Richard Stevens; Stephen A. Rago, Advanced Programming in the UNIX® Environment: Second Edition, Addison Wesley Professional,  978-0-201-43307-4
* Brian W. Kernighan, Dennis M. Ritchie, The C Programming Language (2nd Edition), Prentice Hall PTR,  978-0131103627

LIBROS DE CONSULTA:
* Brian W. Kernighan, Rob Pike, The Practice of Programming, Addison-Wesley Professional, inglés,  978-0201615869
* Andy Oram, Greg Wilson, Beautiful Code: Leading Programmers Explain How They Think, O'Reilly Media,  978-0596510046

Perfil del Profesor:  

(110201)Maestría en Programación/Programador Computacional ; (110701)Maestría en Ciencias Computacionales ; (110101)Maestría en Ciencias Computacionales/de Información ; (110103)Maestría en Tecnología de la Información/Informática/Sistemas Computacionales ; (110201)Doctorado en Programación/Programador Computacional ; (110701)Doctorado en Ciencias Computacionales ; (110101)Doctorado en Ciencias Computacionales/de Información ; (110103)Doctorado en Tecnología de la Información/Informática/Sistemas Computacionales
CIP: 110201, 110701, 110101, 110103

Experiencia recomendada:  

 

Profesor con maestría o doctorado en al área de TI y Ciencias Computacionales con experiencia en la programación a nivel sistema y dominio del lenguaje C.

Idioma en que se imparte la materia:  


Español
CIP: 110201  Computer Programming/Programmer, General.   CL-L-U-CA-UDC:  3-0-8-3-3.5       

Discipline:  

Computer Technologies

School:   

Undefined

Academic Department:   

Undefined

Programs:   

Prerequisites:  

( TC1005 and TC2008 Corequisite)

Equivalences:  

None.

Course intention within the general study plan context:  

It is a course in advanced programming in the C programming language to solve problems at the operating systems level, through which the student acquires the ability to design and program solutions to these problems, in a low-level platform dependent language and using the UNIX API or similar operating systems.

Course objective:  

At the end of this course the student will have acquired the necessary knowledge to solve programming problems at the operating systems level, with emphasis on UNIX, using the C programming language. The course will provide all skills needed to design and program solutions using techniques such as memory management, program management for concurrent processes and threads, techniques for handling I/O functions and IPC mechanisms for programming with sockets.

Teaching and learning tecniques:  

Problem-based Learning

Suggested Bibliography:  

TEXT BOOKS:
* W. Richard Stevens; Stephen A. Rago, Advanced Programming in the UNIX® Environment: Second Edition, Addison Wesley Professional,  978-0-201-43307-4
* Brian W. Kernighan, Dennis M. Ritchie, The C Programming Language (2nd Edition), Prentice Hall PTR,  978-0131103627

BOOKS FOR CONSULTATION:
* Brian W. Kernighan, Rob Pike, The Practice of Programming, Addison-Wesley Professional, inglés,  978-0201615869
* Andy Oram, Greg Wilson, Beautiful Code: Leading Programmers Explain How They Think, O'Reilly Media,  978-0596510046

Academic credentials required to teach the course:  

(110201)Master Degree in Computer Programming/Programmer and (110701)Master Degree in Computational Sciences and (110101)Master Degree in Computer/Information Sciences and (110103)Master Degree in Information Technology. and (110201)Doctoral Degree in Computer Programming/Programmer and (110701)Doctoral Degree in Computational Sciences and (110101)Doctoral Degree in Computer/Information Sciences and (110103)Doctoral Degree in Information Technology.
CIP: 110201, 110701, 110101, 110103

Recommended Experience:  

 Instructor with a Master or PhD. degree in Computer Science or similar field with long experience in systems programming with the C lanaguage.

Language of Instruction:  


Spanish