Programación y Pensamiento Computacional

Programación

El poder resolver problemas mediante cálculos automatizados nos permite expandir nuestro conocimiento.

Para este programa se utilizarán de referencia dos excelentes textos:

  • Structure and Interpretation of Computer Programs (G. Sussman, H. Abelson & J. Sussman)
  • How to Design Programs (M. Felleisen, R. Findler, M. Flatt, S. Krishnamurthi)

Se utilizarán estos principios para comprender la dimensión matemática de la computación, resolviendo problemas mediante la programación en Racket.

Utilizarán también uno de los sistemas más modernos de control de versiones: Git. Que es un estándar de la industria del desarrollo y les dará ventajas a la hora de buscar trabajo.

Unidad 1: ¿Cómo se transfiere la información?

En esta primera unidad, comprenderán las bases del almacenamiento, codificación y decodificación de la información tanto en soportes digitales como análogos.

Las diapositivas de clases están disponibles en los siguientes enlaces: Clase 1, Clase 2,Clase 3 ,Clase 4 ,Clase 5 ,Clase 6 ,Clase 7 ,Clase 8.

  • OA 1: Aplicar conceptos de Ciencias de la Computación: Abstracción, organización lógica de la información, análisis de soluciones alternativas, y generalización. Construyendo el código de una solución computacional.

Unidad 2: La resolución de problemas y las máquinas

Los computadores son máquinas que sólo pueden hacer aquello para lo que se les dieron instrucciones, nada más.

Las diapositivas de clases están disponibles en los siguientes enlaces: Clase 1, Clase 2,Clase 3 ,Clase 4 ,Clase 5 ,Clase 6 ,Clase 7 ,Clase 8.

Es por esto que los problemas que se quieran solucionar con ellos deben ser formalizados a su lenguaje.

  • OA 2: Representar diferentes tipos de datos en una variedad de formas que incluya pero no se limite a: Texto, sonido, imágenes, y números.
  • OA3: Desarrollar y programar conjuntos de instrucciones para ejecutar procedimientos matemáticos, realizar cálculos y obtener términos definidos por una regla o patrón.

Unidad 3: Ayuda de la computadora en problemas geométricos y estadísticos

El poder automatizar cálculos y encontrar patrones en conjuntos de datos son las formas más útiles de utilizar nuestras computadoras.

Las diapositivas de clases están disponibles en los siguientes enlaces: Clase 1, Clase 2,Clase 3 ,Clase 4 ,Clase 5 ,Clase 6 ,Clase 7 ,Clase 8.

Se usará el DSL euclid y math de Racket para resolver problemas en estas dos áreas de las matemáticas.

  • OA 4: Desarrollar programas y realizar análisis mediante procesadores simbólicos, de geometría dinámica y de análisis estadístico.

Unidad 4: Elaboración de programas para móviles y robótica

Con todo lo aprendido, estarán preparadas y preparados para desarrollar aplicaciones móviles web usando el DSL html5-lang de Racket y para interactuar con dispositivos de control incrustados mediante el DSL rokit-racket .

Las diapositivas de clases están disponibles en los siguientes enlaces: Clase 1, Clase 2,Clase 3 ,Clase 4 ,Clase 5 ,Clase 6 ,Clase 7 ,Clase 8.

  • OA 5: Desarrollar aplicaciones para dispositivos móviles y para dispositivos provistos de sensores y mecanismos de control.
  • OA 6: Utilizar la tecnología digital, y la información personal y privada que esta contiene, de una forma creativa, respetuosa y responsable.