Resumen
Esta entrada no es una clase más, sino el recuento final del curso: recuerda los siete objetivos de aprendizaje que el plan de estudios se propuso al comienzo, muestra en una sola figura a cuál de ellos se asignó cada clase de cada unidad, explica cómo se trabajó cada objetivo a lo largo de las ocho unidades de contenido, distingue los objetivos que tienen una unidad propia de los que recorren el curso entero, reúne lo que el curso deja más allá de C++, enseña a leer la autoevaluación por objetivo, que reúne el primer intento de las evaluaciones de salida, y señala lo que el curso deja a Programación en C++ II.
Objetivos de aprendizaje
- Enunciar los siete objetivos globales del curso y reconocer en qué unidades y clases se trabajó cada uno.
- Distinguir los objetivos que tienen una unidad propia de los que recorren varias, en particular la resolución de problemas con su ciclo de compilar y depurar, y la especificación y la prueba, y explicar cómo se ejercitan estos últimos.
- Separar, en lo aprendido en el curso, lo que vale en cualquier lenguaje de su forma en C++, y explicar qué deja el curso a Programación en C++ II.
- Decidir, a partir de la autoevaluación por objetivo, de la figura y de los desafíos de cada síntesis, qué unidades y qué clases conviene repasar.
Lo que el curso se propuso
El curso nació con un propósito general: enseñar a escribir programas correctos desde cero, haciendo de la programación misma, y no de un lenguaje, su objeto. Eligió para ello un instrumento exigente, C++, porque no oculta la máquina: obliga a declarar los tipos, separa la compilación de la ejecución, hace visibles la memoria, el costo de copiar y los límites de cada número, y castiga con comportamiento indefinido lo que otros lenguajes disimulan. La clase sobre el plan de estudios desplegó ese propósito en siete objetivos de aprendizaje globales, que conviene tener a la vista con la numeración con que la figura los cita:
- Resolver problemas con programas: especificar qué entra y qué sale, diseñar un algoritmo, seguirlo a mano, y escribirlo, compilarlo, ejecutarlo y depurarlo, interpretando los mensajes y los avisos del compilador.
- Elegir el tipo adecuado para cada dato y razonar sobre los límites de su representación: el rango de los enteros, el desbordamiento, el redondeo de la coma flotante y la codificación del texto.
- Construir expresiones correctas, conociendo la precedencia, las conversiones de tipo, los efectos secundarios y lo que la norma deja indefinido.
- Diseñar el control de flujo con decisiones y bucles correctos, que terminan, y justificar su corrección con un invariante.
- Descomponer un problema en funciones con interfaces claras, elegir cómo pasar los parámetros, y resolver problemas por recursión.
- Representar y procesar datos compuestos (secuencias, tablas, registros, texto y archivos) con los algoritmos básicos y con la biblioteca estándar, estimando su costo.
- Organizar programas más grandes en varios archivos, especificarlos con una precondición y una poscondición, probarlos de manera sistemática y argumentar su corrección.
Cada clase del curso declaró, además, sus propios objetivos específicos. Las clases no dicen a qué objetivo global sirve cada uno; esa correspondencia es una lectura hecha desde fuera, con el mismo método que en los demás cursos del sitio. Cada objetivo específico se asigna a un objetivo global principal y, si los toca, a otros secundarios; cada uno cuenta entero en su principal y por mitad en cada secundario, y la clase se une como principal al objetivo global que reúne más peso y como secundarios a los demás que reciben alguno. Si dos objetivos empatan, decide el de la unidad y, si ninguno lo es, el de menor número; así, la clase sobre las variables y la memoria, cuyos objetivos se reparten por igual entre el 1 y el 2, se une al 2, que es el de su unidad. Las introducciones siguen la misma regla. Las síntesis, en cambio, siguen un criterio propio: su principal es el objetivo de su unidad, porque su cadena de conceptos, su evaluación de salida y la mayoría de sus desafíos reúnen lo que la unidad enseñó; la unidad del texto y los archivos, que no tiene un objetivo propio, se cuenta con el 6, al que pertenecen tres de sus cuatro clases. Si esto es así, el curso entero admite la forma de una espina: la cabeza es el propósito general; la columna, el orden de las unidades, cada una con su tramo; cada clase es un nudo de ese tramo, unido a su objetivo principal, y los siete objetivos flotan alrededor de la columna, sostenidos por las clases que los alimentan.
Cargando el contenido…