¡Esta es una revisión vieja del documento!
Brainstorm C++
Sobre el curso:
“Sería un brevísimo cursito sobre programación en C++, lo más didáctico posible, pero fuertemente orientado a competencias de programación: Es decir, no se focalizaría para nada en temas como memoria dinámica (free / malloc), funciones de sistema operativo para realizar tareas complejas, programación orientada a objetos / clases, etc, nada de eso.”
Podría ser un cursito separado en lecciones, desde lo básico básico, introduciendo los distintos conceptos específicos sobre programación en C++ que pueden ser útiles para utilizar en competencias de programación, de manera incremental.
Probablemente sea conveniente apuntar todo a un autodidacta. En el mejor de los casos el alumno interesado tendrá un profesor que lo apoye y acelere el proceso de aprendizaje y fomente su curiosidad, pero es mejor si no se asume eso.
Posibles lecciones:
Introducción general, palabras de bienvenida, un poco de qué se trata la programación, qué tipo de lenguaje es C++, muy breve descripción de cómo está organizado lo que vendrá en lecciones posteriores.
Preparación del ambiente de desarrollo desde cero.
En windows:
En linux (Ubuntu?)
En Mac
Ejemplo minimal de código: Un Hello World con explicación de todas las partes (algunas no nos interesan demasiado, como el “using namespace std”, pero está bueno comentar por qué está ahí).
Para empezar conviene algo fuertemente experimental, donde haya algún código sencillo para que el interesado lo vaya toqueteando y modificando, y vea cómo algunos cambios afectan el comportamiento. Mientras más “prácticas” pero simples sean las tareas mejor.
De esta forma se pueden ir introduciendo algunas de las ideas fundamentales gradualmente, explicándolas sobre los ejemplos. Hay que pensar ejemplos lo más claros e interesantes posibles.
Luego de explicar los temas y ejemplos, se pueden dejar ejercicios (resueltos?) para el lector.
Temas a desarrollar para entender el funcionamiento básico de C++: