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.

En este trabajo analizamos cómo organizar <strong>la</strong>enseñanza <strong>de</strong>l paradigma OO en los p<strong>la</strong>nes <strong>de</strong>estudio <strong>de</strong> informática. Presentamos unapropuesta para <strong>la</strong> titu<strong>la</strong>ción Ingeniero enInformática, indicando como tras<strong>la</strong>dar<strong>la</strong> a <strong>la</strong>stitu<strong>la</strong>ciones técnicas. Esta propuesta es fruto <strong>de</strong>nuestra experiencia al impartir <strong>la</strong>s asignaturasre<strong>la</strong>cionadas con <strong>la</strong> OO en nuestra facultad.El trabajo se organiza <strong>de</strong>l siguiente modo. En<strong>la</strong> siguiente sección presentamos nuestrapropuesta para Ingeniero en Informática. Luego<strong>de</strong>scribimos <strong>la</strong>s dos asignaturas que conforman <strong>la</strong>enseñanza obligatoria sobre OO que proponemosy que actualmente impartimos en nuestra facultad.A continuación comentamos cuál es <strong>la</strong> situaciónen el caso <strong>de</strong> <strong>la</strong>s titu<strong>la</strong>ciones técnicas y en losfuturos p<strong>la</strong>nes. Finalmente presentamos <strong>la</strong>sconclusiones.2. La propuestaCreemos que un ingeniero en informática <strong>de</strong>berecibir una formación básica en orientación aobjetos a través <strong>de</strong> dos cursos: uno <strong>de</strong>introducción a <strong>la</strong> programación OO (nosreferiremos a él como IPOO) y otro <strong>de</strong> análisis ydiseño OO (nos referiremos a él como ADOO).En IPOO se introducen los conceptos básicos quecaracterizan al paradigma <strong>de</strong> programación OO yen ADOO el alumno conoce y apren<strong>de</strong> a aplicarun proceso software OO y los patrones <strong>de</strong> diseñobásicos. IPOO se <strong>de</strong>sarrol<strong>la</strong>ría como unaasignatura <strong>de</strong> tercero <strong>de</strong> seis créditos, una vez queel alumno conoce <strong>la</strong> programación procedural ymodu<strong>la</strong>r, mientras que ADOO se cursaría comouna asignatura <strong>de</strong> cuarto curso también <strong>de</strong> seiscréditos. Es recomendable que ambos cursos no seimpartan en el mismo año ya que es bueno que e<strong>la</strong>lumno tenga tiempo para madurar esa nuevavisión <strong>de</strong> <strong>la</strong> programación que le muestra IPOO.Des<strong>de</strong> hace cinco años, nuestro <strong>de</strong>partamentosigue este enfoque en los estudios <strong>de</strong> Ingeniero enInformática, a través <strong>de</strong> <strong>la</strong> asignatura obligatoriaDiseño <strong>de</strong> Programas en tercero (correspon<strong>de</strong> aIPOO) y <strong>de</strong> <strong>la</strong> troncal Arquitectura <strong>de</strong>l Software<strong>de</strong> cuarto (correspon<strong>de</strong> a ADOO). En este trabajoutilizaremos los nombres IPOO y ADOO, en vez<strong>de</strong> los nombres <strong>de</strong> estas asignaturas, para insistiren el carácter general <strong>de</strong> nuestra propuesta.La organización <strong>de</strong> IPOO presupone unenfoque procedural-primero para <strong>la</strong> introduccióna <strong>la</strong> programación <strong>de</strong>l primer año, por los motivosque se exponen en [5]. En <strong>la</strong> mencionadapropuesta curricu<strong>la</strong>r <strong>de</strong> ACM/IEEE [2] se seña<strong>la</strong>que es posible i<strong>de</strong>ar p<strong>la</strong>nes en los que <strong>la</strong>introducción a <strong>la</strong> programación pue<strong>de</strong> serabordada tanto a través <strong>de</strong>l paradigma imperativocomo <strong>de</strong>l paradigma OO o incluso <strong>de</strong>l funcional,siendo una cuestión a <strong>de</strong>batir en cada facultad. En[5] se <strong>de</strong>fien<strong>de</strong> comenzar con el paradigmaimperativo, aunque con un enfoque en el que losconceptos <strong>de</strong> secuencia e inducción juegan unpapel central, así como el <strong>de</strong> tipo abstracto <strong>de</strong>datos.Proponemos pues seguir un enfoque quepo<strong>de</strong>mos l<strong>la</strong>mar evolutivo, en el sentido quepasamos <strong>de</strong> <strong>la</strong> programación procedural a <strong>la</strong>modu<strong>la</strong>r y luego aterrizamos en <strong>la</strong> programaciónorientada a objetos. En primer año unaintroducción a <strong>la</strong> programación tal y como <strong>la</strong><strong>de</strong>scrita en [5]; en segundo curso el alumnoaplicaría <strong>la</strong> programación modu<strong>la</strong>r <strong>de</strong>ntro unaasignatura anual <strong>de</strong> algoritmos y estructuras <strong>de</strong>datos, antes <strong>de</strong> cursar <strong>la</strong>s dos asignaturasmencionadas arriba IPOO y ADOO que en suconjunto constituyen un curso completo sobreconstrucción <strong>de</strong> software OO que incluirían todoslos contenidos sobre OO consi<strong>de</strong>rados comobásicos en <strong>la</strong> recomendación curricu<strong>la</strong>r <strong>de</strong>ACM/IEEE [2].B. Meyer critica este enfoque evolutivo alconsi<strong>de</strong>rarlo fruto <strong>de</strong> una visión equivocada <strong>de</strong>lprofesor que cree necesario enseñar <strong>la</strong>programación siguiendo el or<strong>de</strong>n en que él haconocido los paradigmas, y se pregunta por qué noempezar con los objetos <strong>de</strong>s<strong>de</strong> el primer año, dadoque todos estamos <strong>de</strong> acuerdo en que <strong>la</strong> OO es elmedio a<strong>de</strong>cuado para construir software. Aunquereconocemos el papel <strong>de</strong> B. Meyer en el <strong>de</strong>sarrollo<strong>de</strong> <strong>la</strong> OO y sus gran<strong>de</strong>s aportaciones, <strong>de</strong>spués <strong>de</strong>reflexionar sobre esta cuestión y tras unaexperiencia <strong>de</strong> más <strong>de</strong> diez años creemos quenuestro enfoque procedural-modu<strong>la</strong>r-OO es elcamino a<strong>de</strong>cuado para abordar <strong>la</strong> enseñanza <strong>de</strong> <strong>la</strong>programación, ya que el alumno pue<strong>de</strong> valorarmucho mejor <strong>la</strong>s ventajas <strong>de</strong> <strong>la</strong> OO y a<strong>de</strong>más esmás natural el paso procedural-OO que al revés.De hecho, en <strong>la</strong> primera parte <strong>de</strong>l libro [7], B.Meyer justifica <strong>la</strong>s ventajas <strong>de</strong> <strong>la</strong> OO partiendo <strong>de</strong><strong>la</strong> experiencia <strong>de</strong>l lector en programación

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

Saved successfully!

Ooh no, something went wrong!