Descripción de la Materia:
JUSTIFICACIÓN GENERAL.
Nuestro mundo está cada vez más automatizado. Cada año que transcurre, más personas realizan
tareas usando la computadora: correo electrónico, búsqueda de información, programación, gestión de
información, documentación, juegos, etc. Ya no se puede ni se quiere prescindir de las computadoras ni
de la automatización de los trabajos, lo que por supuesto crea mayor demanda de productos
informáticos.
En Bolivia, concretamente en Cochabamba, no existen verdaderas empresas desarrolladoras de
programas informáticos. Las empresas e incluso las instituciones gubernamentales satisfacen sus
necesidades de software comprando programas a empresas extranjeras a elevados precios. Y es que
tampoco existen políticas nacionales que apoyen el desarrollo nacional de software.
La construcción de programas es una tarea muy compleja y muy propensa a tener errores. Para
desarrollar programas informáticos de manera competitiva y con calidad es necesario preparar a los
futuros profesionales en Informática e Ingeniería de Sistemas con una base teórica sólida y bastante
práctica en el área de programación de sistemas informáticos.
La asignatura Introducción a la Programación de las Carreras de Licenciatura en Informática e
Ingeniería de Sistemas es la primera de una serie de asignaturas dedicadas a la enseñanza de
algoritmos y programación de sistemas que proporcionan las bases necesarias para resolver pequeños
problemas con ayuda de la computadora. Además de ello, fomenta la capacidad de abstracción y
estimula el pensamiento creativo y disciplinado en los alumnos.
La asignatura Introducción a la Programación se encuentra ubicada en el primer semestre de la malla
curricular de ambas Carreras y se relaciona con las otras materias de la malla curricular de la siguiente
manera:
- Se relaciona verticalmente con las materias: Elementos de programación y estructuras de datos y
Métodos técnicas y taller de programación, porque las tres asientan las bases de programación en
computadoras usando un lenguaje de tercera generación.
- Se relaciona horizontalmente con las materias: Cálculo I, Álgebra I y Lógica porque para programar
se requiere una sólida base matemática y lógica.
PROPÓSITOS GENERALES.
En la asignatura Introducción a la Programación se tienen los siguientes propósitos:
- Proporcionar a los estudiantes los conocimientos básicos de programación: algoritmos, variables y
constantes, asignación, operaciones de entrada y salida, estructuras de control y selección,
subprogramas y estructuras de datos básicas, tanto de manera teórica como práctica siguiendo el
método estructurado.
- Lograr que los estudiantes desarrollen un pensamiento algorítmico y abstracto para la resolución de
problemas.
- Conseguir que el alumno sea capaz de diseñar algoritmos robustos, completos, correctos y
eficientes.
- Conseguir que el alumno sea capaz de analizar problemas reales y resolverlos por medio el
lenguaje de programación Java en la computadora.
- Lograr que los alumnos tomen conciencia de la importancia de la documentación de programas.
- Despertar el interés de los estudiantes en la investigación de nuevos comandos y lenguajes de
programación.
- Fomentar la puntualidad, respeto, honestidad, limpieza y orden.
OBJETIVOS GENERALES.
Al terminar el semestre, el alumno será capaz de:
- Describir con sus propias palabras los principales componentes de la computadora (hardware,
software, lenguajes de programación, intérprete y compilador).
- Diseñar algoritmos para resolver pequeños problemas siguiendo las etapas: formulación del
problema, elección del método, codificación y ejecución.
- Aplicar correctamente los conceptos principales relacionados con la programación: constantes,
variables, tipos de datos, expresiones, asignación de datos e instrucciones de entrada y salida al
tiempo de programar en la computadora.
- Seleccionar y aplicar correctamente las estructuras de control (decisión y repetición) adecuadas a
cada problema, al tiempo de realizar programas en la computadora.
- Reconocer la oportunidad de utilización de estructuras de datos (arreglos y matrices) para
solucionar satisfactoriamente los problemas, tomando en cuenta los criterios expuestos en el curso.
- Dividir un problema en subprogramas aplicando el concepto "divide y conquistarás" y "refinamiento
sucesivo", tomando en cuenta todos los criterios planteados en el curso.
- Programar soluciones a pequeños problemas utilizando apropiadamente la programación
estructurada y la sintaxis de Java.