VICERECTORÍA ACADÉMICA
FACULTAD DE INGENIERÍA DE SISTEMAS
CONTENIDO PROGRAMÁTICO
Datos de identificación
Programa: Asignatura:
Ingeniería de Sistemas y Programación de Computadores
Computación
Código: 50493102 Plan de estudios : 482
Número de Créditos dentro del Fecha de actualización:
Plan de Estudios: 3 Julio-2016
Justificación de la asignatura
La tecnología se ha convertido hoy en día en un elemento indispensable para la
sociedad. Cada vez más utilizamos diferentes dispositivos tecnológicos para
comunicarnos, transportarnos, divertirnos, aprender, y en general, para apoyar
diferentes labores de nuestra vida cotidiana.
Dispositivos tecnológicos como los computadores, los dispositivos móviles
(tabletas, celulares, relojes, etc.), los vehículos, los aviones, entre otros, cuentan
con dos componentes fundamentales: el hardware y el software. El hardware,
tiene que ver con la parte física de los dispositivos que les permite realizar
determinadas funciones de manera física. El software, tiene que ver con la parte
lógica que hace que el hardware funcione de acuerdo a lo que se requiera. La
programación es el mecanismo con que el ingeniero construye dicho software y
con el que puede ofrecer soluciones a las diferentes necesidades de la sociedad.
Este curso busca que el estudiante desarrolle las habilidades necesarias para
resolver problemas a través de la programación. Los conocimientos que se
adquieren en este curso le permitirán al estudiante desarrollar competencias para
aprender y utilizar otros lenguajes de programación con los que se desarrolla el
software de cualquier dispositivo tecnológico.
Objetivo General
Desarrollar las habilidades necesarias para que los estudiantes resuelvan
problemas del mundo real, mediante el diseño e implementación de Algoritmos
expresados en un lenguaje de programación.
Objetivos Específicos
Aprender los elementos básicos de un lenguaje de programación para dar
respuesta a problemas de la cotidianidad.
Generar interés por el conocimiento de nuevos paradigmas y enfoques para
la solución de problemas.
Valorar las actividades asociadas a la programación como una herramienta
fundamental para el desarrollo en Ingeniería.
Generar actitud responsable y ética frente al desarrollo de trabajo individual
y la participación en el trabajo en grupo.
Reconocer y respetar la diferencia de criterios, y defender con argumentos
las opiniones propias.
Contenidos
Unidad I: Lógica Computacional
o Operadores y Expresiones
o Estructuras de Selección
o Estructuras de Repetición
o Arreglos Unidimensionales
o Cadenas de caracteres
Unidad II: Matrices
o Arreglos Bidimensionales
o Operaciones con Arreglos
Unidad III: Funciones
o Definición
o Paso de Parámetros por Valor
o Paso de Parámetros por Referencia
o Argumentos por Omisión
o Recursividad
Unidad IV: Estructuras
o Declaración e Inicialización
o Acceso a Estructuras
o Estructuras Anidadas
o Estructuras y Arreglos
o Estructuras y Funciones
Unidad V: Archivos
o Definición
o Organización de Archivos
o Tipo de Almacenamiento de Archivos
o Archivos de Lectura
o Archivos de Escritura
Unidad VI: Apuntadores
o Declaración
o Inicialización
o Punteros Null y Void
o Punteros y Arreglos
Unidad VII: Introducción a las Estructuras Dinámicas
o Tipos de Listas
o Declaración de una Lista
o Inserción elemento en una lista
Inserción al inicio de la lista
Inserción en la posición solicitada
o Eliminar elementos de una lista
o Recorrido de una lista
Competencias que los estudiantes desarrollan
COMPETENCIAS GENERALES
Competencias instrumentales:
Entiende y organiza el proceso de aprendizaje a partir de la interacción
entre el docente, el grupo y el propio ser que conllevan a la adquisición de
los conocimientos y habilidades necesarias para la solución de problemas
computacionales.
Comprende y usa adecuadamente documentos técnicos (textos, manuales
y documentación de código y librerías).
Tiene conocimiento de los conceptos básicos de la programación para la
construcción de aplicaciones computacionales.
Es capaz de desarrollar programas siguiendo las técnicas del ciclo de
desarrollo de programas, desde la identificación inicial del problema hasta
la obtención de un producto final, con el apoyo un lenguaje de
programación
Competencias interpersonales:
Usa el lenguaje oral, escrito y gráfico como herramienta de aprendizaje y
socialización de problemas, soluciones y resultados
Reconoce el trabajo en equipo como un requisito indispensable para el
desarrollo de soluciones a problemas reales en diferentes áreas.
Actúa éticamente en su desempeño profesional.
Respeta y valorar la diversidad cultural y las características individuales
como elementos enriquecedores de la sana convivencia.
Promueve la equidad, honestidad, libertad y fraternidad como rasgos
esenciales de los ingenieros.
Conoce y aplica los principios de la democracia y de la convivencia
ciudadana para garantizar el ejercicio de los derechos y deberes
Competencias sistémicas:
Tiene la capacidad de ver los problemas y soluciones como un todo
formado al relacionar diferentes componentes.
Toma conciencia de la importancia del contenido de la asignatura en las
aplicaciones de la Ingeniería
Competencias de carácter tecnológico
Formula soluciones informáticas flexibles, extensibles y robustas haciendo
uso de los conceptos y características de la programación en C++.
Desarrolla aplicaciones haciendo uso de los conceptos de la programación
en C++
Metodología
• Por cada unidad de contenido se diseñarán guías o talleres que deberá
desarrollar el estudiante en el laboratorio con la asesoría del docente. Para
cada uno de los cortes se debe desarrollar un taller unificado.
• Los estudiantes elaborarán reportes escritos de su trabajo, que deben
evidenciar el proceso de formulación, diseño (con los dos esquemas de
representación) e implementación (C++) de las soluciones. Así como un
análisis de las dificultades encontradas en él, esto con el fin de fomentar la
autoevaluación y la autocrítica.
• Se fomentará el desarrollo de trabajo en grupos interdisciplinarios
aprovechando la diversidad de ramas de la ingeniería que toman el curso. Sin
embargo, la evaluación evidenciará el desempeño de cada estudiante con
relación a las tres ramas del saber propuestas: saber-saber, saber-hacer y
saber-ser.
• Se desarrollarán ejercicios de clase donde los estudiantes pongan en práctica
los conocimientos adquiridos.
• Se fomentará el desarrollo de las competencias de autoformación y el
autoaprendizaje continuo y permanente, a través de asignaciones de
exposiciones de temas relacionados con la asignatura, donde los estudiantes
hagan el ejercicio de la recolección, análisis, y presentación de los hallazgos,
que deben incluir la revisión de fuentes en inglés.
• Se empleará la plataforma de Moodle como repositorio para el material de
clase y para quices a lo largo del periodo académico.
• Se desarrollará un proyecto final (máximo dos personas) en el cual se debe
evidenciar el aprendizaje secuencial de la asignatura.
Criterios de evaluación
La distribución de la nota final del curso será de la siguiente forma:
Primer corte: 20% (Quiz, taller, laboratorio, parcial, entre otros)
Segundo corte: 20% (Quiz, taller, laboratorio, parcial, entre otros)
Tercer corte: 30% (Quiz, taller, laboratorio, parcial, entre otros)
Cuarto corte: 30% (Quiz, taller, laboratorio, examen, entre otros)
Fuentes de información o referencias (impresas o digitales)
Libros
[1] JOYANES Aguilar, Luis. (2006), Programación en C++: un enfoque
práctico, McGraw Hill, Disponible a través de e-libro.
[2] JAMSA, Kris. (1996). Aprenda C++ Paso a Paso. Alfaomega, 1996.
Disponible en físico en la biblioteca de la sede Sur.
[3] HENKEMANS, Dirk and LEE, Mark. (2002). C++ Programming. Course
Technology. Disponible en E-Brary.
[4] DAWSON, Michael. (2004). Beginning C++ Game Programming. Cengage
Learning. Disponible en E-Brary.
Recursos computacionales
[1] CodeBlocks