Lombardi
Lombardi
Lombardi
Cita recomendada:
Lombardi, C. (Dir.) (2019). Propuestas, lenguajes y herramientas para la enseñanza de programación orientada
a objetos. (Proyecto de investigación). Bernal, Argentina: Universidad Nacional de Quilmes. Disponible en
RIDAA-UNQ Repositorio Institucional Digital de Acceso Abierto de la Universidad Nacional de Quilmes
http://ridaa.unq.edu.ar/handle/20.500.11807/2924
Finalización: 30/04/2022
Integrantes: Aloi, Federico; De Jesús, Ronny; Dodino, Fernando; Gassman, Leonardo; Palumbo,
Nahuel; Passerini, Pablo Nicolás; Pernía, Eric. Resumen: La Programación Orientada a Objetos
(POO) es un paradigma de programación informática surgido a fines de la década de 1960. Su
preeminencia en el estado actual del desarrollo de software es indiscutible: gran parte de los
lenguajes de programación más usados en la industria incorpora sus conceptos principales. De
este hecho se deriva la pertinencia de fortalecer el rol de la POO en currículas de carreras
sobre informática. El plan de la Tecnicatura en Programación Informática de la UNQ refleja
esta necesidad al introducir contenidos de POO desde primer año. Por otro lado, la gran
dificultad que revisten, para muchos estudiantes, los cursos iniciales de programación,
constituye un fenómeno bien conocido y estudiado en la literatura. La enseñanza inicial sobre
POO combina algunos problemas detectados en general para cursos iniciales sobre
programación, con otros relacionados con conceptos básicos de este paradigma; en particular
cuando la POO se introduce en forma temprana en la currícula universitaria, o su enseñanza
tiene lugar en los últimos tramos de la enseñanza secundaria. Este fenómeno dio lugar al
desarrollo de múltiples estrategias que buscan simplificar los tramos iniciales de currículas
relacionadas con la programación. Varias de ellas (aunque no la mayoría) proponen el uso de
editores, entornos de programación, herramientas de análisis de código, y (en pocos casos)
lenguajes de programación educativos. Desde 2004, un grupo de docentes que se desempeñan
en distintas universidades del AMBA, en particular varias del conurbano, trabaja en la
elaboración de una estrategia para la enseñanza de POO en el principio del nivel terciario o el
final del secundario. Esta estrategia está basada en la introducción gradual de los conceptos
teóricos, y en la inmediata aplicación práctica de cada uno. El objetivo es facilitar la
comprensión de dichos conceptos por parte del alumnado, y por lo tanto, aumentar los
indicadores de retención y aprobación sin sacrificar calidad. Esta estrategia se está utilizando
actualmente en cursos de UNQ, UNDAv, UNSaM, UNAHur, y UTN (Regs. Buenos Aires y Delta).
La búsqueda de herramientas informáticas educativas adecuadas es un interés central en el
proceso de elaboración de esta estrategia pedagógica, desde sus comienzos. Esto se basa en el
convencimiento de que contar con buenas herramientas facilita la experiencia de estudiantes
que no cuentan con una cultura previa de estudio y aprendizaje, como es el caso de muchos
estudiantes iniciales en varias de las universidades donde se aplican estas ideas. El último
(hasta el momento) estadío en esta búsqueda continua es Wollok, un producto desarrollado
dentro del mismo grupo docente, que reúne un lenguaje y un entorno de programación.
Wollok cuenta con las características que requiere la secuencia didáctica definida como parte
de la estrategia de enseñanza de POO recién mencionada. El objetivo general del proyecto es
fortalecer, desde múltiples perspectivas, la estrategia para la enseñanza de la POO recién
descripta, de forma tal de propender al aprovechamiento por parte de otros grupos docentes,
de las ideas, propuestas curriculares y herramientas desarrolladas en torno a la misma.
Esperamos también que este proceso permita reforzar los lazos entre docentes que utilizan
este enfoque actualmente en distintas universidades. Una de estas perspectivas está centrada
en Wollok. Entendemos que contar con una versión que no requiera de instalación previa
puede ser un facilitador relevante para su popularización. Por otro lado, el mejoramiento de la
capacidad de análisis del código producido por los estudiantes, detectando errores o indicando
posibilidades de mejora, potencia la utilidad de la herramienta en los contextos educativos
para los que fue concebida. Otra perspectiva, inescindible de la anterior e igualmente
relevante, es la del material curricular. En este sentido, nos proponemos organizar, pulir y/o
formalizar, el cúmulo de elementos acumulados a lo largo del tiempo, que incluye además de
material como guías de ejercicios en distintos formatos digitales, apuntes y otros,
observaciones y análisis (sobre errores comunes en estudiantes, aspectos puntuales que es
conveniente reforzar, evolución esperable durante un curso, etc) que pueden contribuir al
éxito de una experiencia de enseñanza-aprendizaje. En particular, estamos interesados en la
utilización de plataformas de aprendizaje asistido como Mumuki (desarrollada en Argentina)
Nos proponemos también trabajar sobre otras herramientas informáticas de apoyo al trabajo
docente. En particular, un programa que simplifique la gestión de las entregas que
regularmente se solicitan a los estudiantes, y un soporte informático que permita un mejor
seguimiento de su rendimiento académico, y por lo tanto mejorar la asistencia que se brinda a
cada uno. Además, estas herramientas permitirán recolectar información de calidad, cuyo
análisis puede ayudar a la obtención de indicadores objetivos de los resultados de las ideas
pedagógicas que se ponen en juego. A su vez, desarrollos genéricos sobre el tratamiento del
código que forma un programa, o la definición de lenguajes de programación, pueden ser
útiles para el mejoramiento de las herramientas de soporte. En particular, el análisis de código
desde un punto de vista más abstracto que el texto que tipea un estudiante (p.ej. usando los
llamados Árboles Abstractos de Sintaxis, o AST por sus siglas en inglés) permiten adaptar la
forma en que se muestra un mismo código (en particular, ejemplos provistos por el grupo
docente) a particularidades de cada grupo de estudiantes, y facilitan la comparación de p.ej.
resoluciones al mismo enunciado. Por otro lado, un lenguaje de programación que permita la
habilitación optativa de algunas características, o cierta flexibilidad en parte de su sintaxis,
habilita a que distintos grupos docentes puedan adaptar una misma estrategia pedagógica a
las necesidades o intereses de distintos contextos. Estas temáticas también formarán parte de
los intereses del proyecto que estamos proponiendo. Finalmente, incluimos una línea de
trabajo que permite mantener la vinculación existente entre las carreras de Informática y de
Automatización y Control Industrial de la UNQ.