12.07.2015 Views

VIII Jornadas de Enseñanza Universitaria de la Informática Cáceres ...

VIII Jornadas de Enseñanza Universitaria de la Informática Cáceres ...

VIII Jornadas de Enseñanza Universitaria de la Informática Cáceres ...

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

evaluó SIMULA-67: "el impacto fue tan gran<strong>de</strong>que fue <strong>la</strong> última vez que pensé en términos <strong>de</strong>subrutinas y estructuras" [10].La conjunción <strong>de</strong> <strong>la</strong> dualidad entre <strong>la</strong>dificultad inicial mayoritaria y <strong>la</strong> naturalidad <strong>de</strong>lcambio para alumnos aventajados, conduce a unnuevo p<strong>la</strong>nteamiento: el problema <strong>de</strong>l<strong>de</strong>sp<strong>la</strong>zamiento afecta a los alumnos noaventajados. Agrupamos en esta <strong>de</strong>nominación,los que superan <strong>la</strong> asignatura <strong>de</strong>l paradigmaprocedimental y usan correctamente losconstructores <strong>de</strong>l lenguaje, cómo, cuándo ydón<strong>de</strong> usarlos, pero carecen <strong>de</strong> una visión másprofunda y general <strong>de</strong> <strong>la</strong> programación. No hanasumido el porqué <strong>de</strong> los constructores <strong>de</strong>llenguaje, sus implicaciones y sus carencias.Des<strong>de</strong> una perspectiva más general, tampocohan asumido que "ciertos conceptosfundamentales son recurrentes a través <strong>de</strong> toda<strong>la</strong> disciplina... son i<strong>de</strong>as significativas,cuestiones, principios y procesos que ayudan aunificar una disciplina académicaprofundamente" [1]. El informe “Computingcurricu<strong>la</strong>’91” ha establecido los siguientes 12conceptos recurrentes: or<strong>de</strong>nación en el espacioy tiempo, en<strong>la</strong>ce, niveles <strong>de</strong> abstracción,completitud, evolución, complejidad,compromisos, seguridad, mo<strong>de</strong>los, reusabilidady eficiencia.Tradicionalmente, los primeros cursos <strong>de</strong>programación se centraban en <strong>la</strong> exposición <strong>de</strong>los mecanismos concretos <strong>de</strong> un lenguaje, no enlos conceptos recurrentes <strong>de</strong> <strong>la</strong> Informática. "Unconcepto recurrente es más fundamental quecualquiera <strong>de</strong> sus ejemp<strong>la</strong>rizaciones. Se sustentaen sí mismo como fundamental, persistente a lo<strong>la</strong>rgo <strong>de</strong> <strong>la</strong> historia <strong>de</strong> <strong>la</strong> computación, y es muyprobable que permanezca en un futuro" [1].La incorporación <strong>de</strong> <strong>la</strong> OO en los p<strong>la</strong>nes <strong>de</strong>estudio evi<strong>de</strong>nció <strong>la</strong>s carencias <strong>de</strong> estos cursos<strong>de</strong> introducción a <strong>la</strong> programación, reflejadaspor el problema <strong>de</strong>l <strong>de</strong>sp<strong>la</strong>zamiento <strong>de</strong>lparadigma, al incluir nuevas terminologías yobjetivos <strong>de</strong> diseño: evolución, reusabilidad,jerarquización, acop<strong>la</strong>miento, encapsu<strong>la</strong>ción,etc. La primera respuesta a este problema fueinvertir el or<strong>de</strong>n <strong>de</strong> exposición, trayendo otrascarencias en su lugar: <strong>la</strong> sobrecarga y, enalgunos casos, el <strong>de</strong>sconcierto o <strong>la</strong>simplificación excesiva <strong>de</strong> <strong>la</strong> programación OOen base a su carácter intuitivo, e incluso, <strong>la</strong>ausencia <strong>de</strong> <strong>la</strong> exposición <strong>de</strong> <strong>la</strong> programaciónprocedimental.Entonces, el problema <strong>de</strong>l <strong>de</strong>sp<strong>la</strong>zamientoradica en <strong>la</strong> ruptura <strong>de</strong>l contenido <strong>de</strong> <strong>la</strong>exposición: con el cambio <strong>de</strong>l paradigma, <strong>la</strong>terminología es completamente nueva(abstracción, encapsu<strong>la</strong>ción, modu<strong>la</strong>rización,jerarquización...), el lenguaje también es nuevoo ina<strong>de</strong>cuado y los objetivos <strong>de</strong> ambosparadigmas parecen diferentes. El exponentemás dramático <strong>de</strong> esta situación se recoge en[7]: "algunos profesores comienzan su primerac<strong>la</strong>se con olvi<strong>de</strong>n cualquier cosa que sepan. OOes radicalmente diferente. Es ilógico". No haynada que <strong>de</strong>sapren<strong>de</strong>r, <strong>la</strong> OO no supone unarevolución <strong>de</strong> conceptos, sino una evolución.Tras <strong>de</strong>tectar esta situación, hemosmodificado nuestros cursos <strong>de</strong> OO, comenzandocon un profundo análisis <strong>de</strong>l grado <strong>de</strong>concreción <strong>de</strong> los conceptos recurrentes queexhibe el porqué, implicaciones y carencias <strong>de</strong>los mecanismos <strong>de</strong>l lenguaje procedimental(sistema <strong>de</strong> tipos, registros, subprogramación,módulos, etc). Para fortalecer el carácterdiacrónico <strong>de</strong>sarrol<strong>la</strong>mos un nuevo lenguajeOO, con <strong>la</strong> misma sintaxis y semántica <strong>de</strong>llenguaje empleado en primero, para losconceptos asumidos <strong>de</strong> <strong>la</strong> programaciónestructurada, pero que introduce los mínimoscambios necesarios para el nuevo paradigma. E<strong>la</strong>provechamiento <strong>de</strong> los alumnos, sus resultadosacadémicos, y <strong>la</strong>s encuestas <strong>de</strong> evaluación <strong>de</strong> <strong>la</strong>docencia mejoraron notablemente.En base a esta experiencia, en este trabajoproponemos una tercera vía, un enfoquediacrónico basado en <strong>la</strong> exposición justificada<strong>de</strong> cada concepto <strong>de</strong> <strong>la</strong> programación a través <strong>de</strong>su evolución histórica motivada por losconceptos recurrentes que subyacen a losmecanismos particu<strong>la</strong>res <strong>de</strong> cualquier paradigma<strong>de</strong> <strong>la</strong> programación.Esta manera <strong>de</strong> exponer <strong>la</strong> programación enlos cursos <strong>de</strong> introducción mejora <strong>la</strong>comprensión y mitiga el impacto <strong>de</strong> <strong>la</strong> transiciónal paradigma OO. Los cambios propuestosafectan no tanto al índice <strong>de</strong>l curso como a susobjetivos, a <strong>la</strong> terminología y al lenguaje ynaturaleza <strong>de</strong> <strong>la</strong>s prácticas. Un ejemplo <strong>de</strong> estai<strong>de</strong>a es que el concepto <strong>de</strong> en<strong>la</strong>ce (estático odinámico) no surge al presentar <strong>la</strong> sobrecarga y

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!