Essays.club - Ensayos gratis, notas de cursos, notas de libros, tareas, monografías y trabajos de investigación
Buscar

Aprender a programar con Python: una experiencia docente

Enviado por   •  8 de Diciembre de 2018  •  Resumen  •  7.517 Palabras (31 Páginas)  •  426 Visitas

Página 1 de 31

Aprender a programar con Python: una experiencia docente

Andr´es Marzal, David Llorens e Isabel Gracia

Universitat Jaume  I

amarzal@lsi.uji.es, dllorens@lsi.uji.es, gracia@lsi.uji.es

Resumen

La  eleccion  del  primer  lenguaje  de programaci´on es un  debate recu- rrente  entre  los  docentes universitarios  de  ingenier´ıas  inform´aticas.  La Universitat Jaume I ha  optado por  una  solucion  poco  convencional: en el primer  curso  de dos  titulaciones de ingenier´ıa  informatica se aprende

a  programar con  Python y C.  Python es un  lenguaje  que  est


en  auge

en el mundo  del software  libre y que presenta una  serie de caracter´ısticas que lo hacen  muy  atractivo para  ensen˜ar a programar. Como  material de apoyo hemos escrito un libro de texto (accesible  gratuitamente) y desarro- llado  un  sencillo  entorno de programacion multiplataforma para  Python que se distribuye con licencia  GPL:  el entorno PythonG, formado  por un int´erprete interactivo, un editor, un depurador sencillo y una  ventana con salida  grafica.  Con  el material docente elaborado se facilita la formacion autodidacta para  cualquiera que quiera  aprender a programar desde cero.

En  este  art´ıculo  reflexionamos  sobre  la  idoneidad de  Python como primer  lenguaje  de programacion, describimos la experiencia docente  de ensen˜ar Python y C en primer  curso y presentamos el entorno de progra- macion  PythonG.

1.     Introduccion

Hace an˜os  hab´ıa  un claro consenso en el mundo  acad´emico  acerca  del len- guaje de programacion con el que ensen˜ar a programar: Pascal.  Era considerado elegante  y sencillo, a la vez que ofrec´ıa soporte  para  el paradigma de programa- cion imperante: la programacion estructurada. Son pocos los que au´n consideran seriamente que Pascal  sea adecuado  y no faltan  razones: las deficiencias del Pas- cal estandar, que obligan  a usar  variantes dialectales  incompatibles entre  s´ı; la ausencia  de modularidad para  ayudarse  en el desarrollo  de software  de medio y gran  taman˜o; la falta  de apoyo a paradigmas de programacion como la pro- gramacion  orientada a objetos; su escas´ısima presencia en el mundo empresarial (exceptuando la de algu´n  derivado  de Pascal,  como Delphi)  o en el desarrollo de software libre. . .

En el entorno  acad´emico se opta hoy por diferentes lenguajes para introducir a los estudiantes en la programacion. Es corriente  optar  por C, C++ o Java, y mas  raramente por  otros  como Modula-2,  Ada  o Scheme.  Quienes  optan  por lenguajes como Modula-2 o Ada lo hacen principalmente por su elegancia y por el soporte  que dan a ciertos aspectos de la programacion: modularidad, chequeo


Figura 1: El entorno de programacion PythonG.

estatico de tipos,  etc. Scheme, un derivado  de Lisp, forma parte  del curr´ıculum de algunas  universidades estadounidenses (en buena  medida  gracias al libro de Abelson  et  al.  [1]) y permite  una  aproximacion funcional  a la programacion, aunque  los paradigmas imperativo y orientado a objetos  sean hoy dominantes. Mucho se puede  criticar  de C (y cualquiera  que haya  programado en C puede escribir un tratado sobre ello), pero frente a una vision puramente acad´emica de la programacion, C contrapone su fuerte  presencia  en ✭✭el mundo  real✮✮. Quienes consideran  que  C  no  resulta  un  buen  primer  lenguaje  de programacion pero siguen con la mirada  puesta  en ✭✭el mundo  real✮✮, se decantan generalmente por C++ o Java,  atractivos por su orientacion a objetos  y fuerte  implantacion en la industria.

Dos titulaciones de informatica de la Universidad Jaume I hacen una apues- ta  diferente:  en primer  curso no se ensen˜a  un  lenguaje  de programacion, sino dos, Python y C.1   Python no solo es un lenguaje  acad´emicamente interesante, muy expresivo y con una  sintaxis  limpia y sencilla: es, ademas,  un lenguaje  ya presente  y con mucho futuro  en ✭✭el mundo  real✮✮. Los lenguajes  de script  (len- guajes interpretados de muy alto nivel, como Perl y Python) gozan de creciente importancia e implantacion en el mundo  del software libre. Pero  Python no es suficiente  para  abordar el contenido  de muchas  asignaturas que  requieren  un lenguaje de programacion de sistemas,  ni para  colmar los conocimientos  practi- cos de programacion en el curr´ıculum de un informatico.  Una vez han aprendido a programar con Python, los alumnos  pasan  a estudiar el lenguaje  C. La gran ventaja de esta  aproximacion es que,  al haber  aprendido ya a programar,  las peculiaridades de  C  pueden  estudiarse como  lo que  son:  peculiaridades (por emplear  una expresion amable).

Para  impartir las practicas de la asignatura se ha  desarrollado un  sencillo entorno  de programacion, llamado  PythonG (ver  figura  1),  con un  editor  de textos  orientado a Python, int´erprete interactivo de ordenes  Python, terminal grafico y depurador. El software  desarrollado se distribuye con licencia GPL.[pic 1]

1Dedicamos a cada  45 horas de teor´ıa/problemas y 30 horas  de pr´acticas a cada  lenguaje.


El mercado  editorial  ofrece infinidad  de t´ıtulos para  aprender programar en C, C++ y Java.  No ocurre  lo mismo con Python, al menos no en Espan˜a. Este problema  se ha  superado  escribiendo  un  curso completo  que cubre  el temario de  la  asignatura. Se trata de  un  libro  de  apuntes que  supone  en  el alumno unos  conocimientos previos  practicamente nulos  y que ha  sido escrito  con un estilo  expositivo  muy  pr´oximo al  de  una  clase  presencial  [6]. El  libro  puede utilizarse para el aprendizaje autodidacta de la programacion y que se distribuye gratuitamente en la red.

...

Descargar como  txt (40.7 Kb)   pdf (352.3 Kb)   docx (45.7 Kb)  
Leer 30 páginas más »
Disponible sólo en Essays.club