Módulo Opcional de Programación

Unidad P1 - Introducción a la Programación

Los estudiantes deberían adquirir la capacidad para solucionar problemas de la vida diaria en forma algorítmica (págs. 13, 73).

 

 

Objetivo Final de la unidad

Los estudiantes deberían ser capaces de diseñar, programar y evaluar algoritmos sencillos para problemas orientados a tareas elementales. (El término "algoritmo" debe ser interpretado en su sentido más amplio).

Contexto

La programación a este nivel no es un tema técnico; en realidad consiste en cambiar una tarea que uno puede "hacer por sí mismo" por una tarea "hecha por otros". Esto significa que la tarea hay que describirla como un procedimiento lo suficientemente detallado y completo como para que pueda utilizarse íntegra y repetidamente por otra persona o por un dispositivo.

Esta "automatización" de una tarea es lo que se denomina programación y, a veces, programación de algoritmos (uno de los aspectos fundamentales de la Informática). Un algoritmo es la manera de pensar sobre un problema y resolverlo, utilizando, a veces, complejas y sofisticadas herramientas, como hojas de cálculo, sistemas de gestión de bases de datos, sistemas operativos o incluso, un procesador de textos.

La programación es una forma rápida, específica y conveniente para que los estudiantes ganen experiencia en la resolución de problemas. El objetivo no es entrenar a "miniprogramadores", sino introducir a los estudiantes en la manera de pensar del programador. Teniendo esto en cuenta, la sintaxis y otros aspectos específicos de un lenguaje de programación no serán de ninguna importancia y, básicamente, sólo tendrán que aprender "lo que se necesita saber". Los profesores deberían acentuar los aspectos metodológicos de la resolución de problemas; la programación es simplemente un medio para obtener un fin, más que una meta en sí.

Resumen del Contenido de la unidad

La unidad contiene tres actividades fundamentales: diseñar un algoritmo orientado a una tarea (resolución de un problema algorítmico), traducir el diseño a un programa (programación) e introducirlo en un sistema (implantación). Estas tres actividades siempre serán consecutivas y estarán estrechamente ligadas. Aunque las descripciones siguientes tratan cada actividad separadamente, el orden de presentación no será necesariamente el orden en que se han de enseñar.

 

1. Diseñar un algoritmo orientado a una tarea (Resolución de problemas algorítmicos)

Objetivos

Los estudiantes deberían ser capaces de:

  1. describir y especificar la tarea que van a realizar;
  2. desarrollar un algoritmo efectivo y eficiente que realice la tarea especificada, aplicando un método determinado, sencillo y estándar.

Contenido

Los estudiantes tendrán que identificar y experimentar los pasos que conforman el proceso de resolución de un problema, aplicando estrategias de resolución en un formato determinado, para especificar soluciones a problemas sacados de la vida cotidiana. Ejemplos de problemas convenientes son: las simulaciones sencillas de las TIrada de dados, lanzamiento de monedas, cálculos tales como las fórmulas para áreas y volúmenes o el interés sobre el dinero prestado y depositado, y los movimientos de la tortuga en el plano.

Ejemplos de posibles entornos de programación son: la tortuga -LOGO, BASIC, Pascal, o un entorno de control de un dispositivo físico (p. ej. un robot).

Cuando los estudiantes adquieran cierta pericia, deberían aprender a dividir las tareas en subtareas y tareas fundamentales con nombres significativos y convenientes para automatizarlas mejor .

 

2. Traducir el diseño a un programa (programación)

Objetivos

Los estudiantes deberían ser capaces de:

  1. transformar sus sencillos algoritmos, mediante un lenguaje procedimental, en programas para computadora;
  2. producir un programa legible, comprensible e interactivo.

Contenido

Los profesores deberían escoger problemas sencillos que requieran únicamente que los estudiantes usen las entradas, salidas y operaciones de asignación más elementales de un lenguaje de programación. Donde pueda aplicarse, los estudiantes deberían determinar usos y tipos de variables apropiados; y seleccionar nombres convenientes y significativos que expresen las funciones de dichas variables en el programa.

Los estudiantes no deberían estar obligados a utilizar un editor o un procesador de textos para escribir su programa.

 

3. Introducirlo en un sistema (implantación)

Objetivos

Los estudiantes deberían ser capaces de:

  1. usar un entorno de programación determinado que les permita introducir, editar, compilar, depurar, actualizar y ejecutar sus propios programas;
  2. dar una descripción escrita significativa y útil del comportamiento interno y externo de su programa.

Contenido

Los estudiantes deberían almacenar y recuperar sus programas en y desde discos, para su modificación y uso posterior. Deberían aprender a diferenciar entre los errores de sintaxis y los errores de ejecución; e identificar las posibles causas de cada tipo de error. Deberían probar sus programas con datos proporcionados o creados para determinar las correcciones y las limitaciones, aprendiendo cómo obtener una copia impresa y una copia en disco de su código fuente.

Los profesores deberían asegurarse de que la documentación producida de los programas sea clara y adecuada para que los demás usuarios sean capaces de comprender cómo funcionan y poder realizar modificaciones adicionales.

Recursos

Recursos mínimos necesarios:

Conexiones

Esta unidad, junto con la unidad P2, constituyen la preparación esencial para los Módulos General y Profesional del Nivel Avanzado.

 


Anexo 1 Sumario Menú principal