Adquirir destrezas bsicas para desarrollar software en el lenguaje de
programacin Java. Familiarizarse con pautas de construccin de software. Dotar de habilidades para resolucin de problemas y su implementacin en un lenguaje de programacin. Conocer las estructuras de datos bsicas. Intercambiar ideas con tus colegas, compaeros y compaeras de estudio acerca de distintas estrategias de resolucin de problemas mediante la creacin de algoritmos y el uso de entornos y lenguajes de programacin educativos.
Qu contenidos se desarrollarn en el curso?
Los contenidos se desarrollarn en las siguientes unidades didcticas:
Unidad 1: Introduccin a los sistemas
Qu es un sistema. Software. Desarrollo de software. Ciclos de vida del software. Metodologas de desarrollo de sistemas. Qu es un lenguaje de programacin. Tipos de Lenguajes de programacin. Lenguajes interpretados y compilados. Unidad 2: Resolucin de problemas Anlisis de enunciados. Interpretacin de pre y postcondicin. Anlisis de datos de entrada y de salida. Restricciones. Errores. Unidad 3: Estructura de datos Datos e informacin. Estructuras de datos primitivas: Carcter, entero, booleano, real. Representacin de datos en memoria. Variables simples. Constantes. Unidad 4: Algoritmos Proceso. Algoritmos. Caractersticas de un algoritmo. Lenguaje algortmico, ingreso y salida de datos. Unidad 5: Estructuras de control Estructuras algortmicas bsicas: condicin, iteracin, seleccin. Unidad 6: Funciones y procedimientos Definicin de subalgoritmo o rutina. Reutilizacin. Razones para definir rutinas. Abstraccin. Ocultamiento de la informacin. Modularizacin. Anlisis descendente. Concepto de funcin. Argumento y valor. Concepto de procedimiento. Pasaje de parmetros por valor y por referencia. Reglas de mbito. Variables locales. Unidad 7: Estructuras lineales de datos Tipos de datos estructurados. Arreglos: vectores y matrices. Estructuras de datos. Tipo de datos abstractos Registros. Bsqueda secuencial y binaria. Archivos secuenciales. Unidad 8 Estructuras de datos definidas por el usuario Estructuras de datos definidas por el usuario, como tipos de datos abstractos (ADT). Pilas, Colas y Listas Enlazadas. Razones para su uso. Anlisis y elementos dentro de cada uno de los niveles: lgico, implementacin, y aplicacin. Reusabilidad de cdigo. Mantenibilidad de aplicaciones.
Bibliografa de referencia
Estructuras de datos estticas - Bsquedas en Arreglos.pdf
Joyanes Aguilar, L. (1999). Programacin en C++. Espaa: S.A.