Python para todos

Solo disponible en BuenasTareas
  • Páginas : 28 (6816 palabras )
  • Descarga(s) : 0
  • Publicado : 20 de febrero de 2012
Leer documento completo
Vista previa del texto
Aprender a programar con Python: una experiencia docente
Andr´s Marzal, David Llorens e Isabel Gracia e Universitat Jaume I
amarzal@lsi.uji.es, dllorens@lsi.uji.es, gracia@lsi.uji.es

Resumen La elecci´n del primer lenguaje de programaci´n es un debate recuo o rrente entre los docentes universitarios de ingenier´ inform´ticas. La ıas a Universitat Jaume I ha optado por una soluci´n pococonvencional: en o el primer curso de dos titulaciones de ingenier´ inform´tica se aprende ıa a a programar con Python y C. Python es un lenguaje que est´ en auge a en el mundo del software libre y que presenta una serie de caracter´ ısticas que lo hacen muy atractivo para ense˜ar a programar. Como material de n apoyo hemos escrito un libro de texto (accesible gratuitamente) y desarrollado un sencilloentorno de programaci´n multiplataforma para Python o que se distribuye con licencia GPL: el entorno PythonG, formado por un int´rprete interactivo, un editor, un depurador sencillo y una ventana con e salida gr´fica. Con el material docente elaborado se facilita la formaci´n a o autodidacta para cualquiera que quiera aprender a programar desde cero. En este art´ ıculo reflexionamos sobre laidoneidad de Python como primer lenguaje de programaci´n, describimos la experiencia docente de o ense˜ar Python y C en primer curso y presentamos el entorno de progran maci´n PythonG. o

1.

Introducci´n o

Hace a˜os hab´ un claro consenso en el mundo acad´mico acerca del lenn ıa e guaje de programaci´n con el que ense˜ar a programar: Pascal. Era considerado o n elegante y sencillo, a la vez queofrec´ soporte para el paradigma de programaıa ci´n imperante: la programaci´n estructurada. Son pocos los que a´n consideran o o u seriamente que Pascal sea adecuado y no faltan razones: las deficiencias del Pascal est´ndar, que obligan a usar variantes dialectales incompatibles entre s´ la a ı; ausencia de modularidad para ayudarse en el desarrollo de software de medio y gran tama˜o; la falta deapoyo a paradigmas de programaci´n como la pron o gramaci´n orientada a objetos; su escas´ o ısima presencia en el mundo empresarial (exceptuando la de alg´n derivado de Pascal, como Delphi) o en el desarrollo u de software libre. . . En el entorno acad´mico se opta hoy por diferentes lenguajes para introducir e a los estudiantes en la programaci´n. Es corriente optar por C, C++ o Java, y o m´sraramente por otros como Modula-2, Ada o Scheme. Quienes optan por a lenguajes como Modula-2 o Ada lo hacen principalmente por su elegancia y por el soporte que dan a ciertos aspectos de la programaci´n: modularidad, chequeo o

1

Figura 1: El entorno de programaci´n PythonG. o

est´tico de tipos, etc. Scheme, un derivado de Lisp, forma parte del curr´ a ıculum de algunas universidadesestadounidenses (en buena medida gracias al libro de Abelson et al. [1]) y permite una aproximaci´n funcional a la programaci´n, o o 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 visi´n puramente acad´mica de o e la programaci´n, C contrapone su fuertepresencia en ((el mundo real)). Quienes o consideran que C no resulta un buen primer lenguaje de programaci´n pero o siguen con la mirada puesta en ((el mundo real)), se decantan generalmente por C++ o Java, atractivos por su orientaci´n a objetos y fuerte implantaci´n en la o o industria. Dos titulaciones de inform´tica de la Universidad Jaume I hacen una apuesa ta diferente: en primer curso nose ense˜a un lenguaje de programaci´n, sino n o dos, Python y C.1 Python no s´lo es un lenguaje acad´micamente interesante, o e muy expresivo y con una sintaxis limpia y sencilla: es, adem´s, un lenguaje ya a presente y con mucho futuro en ((el mundo real)). Los lenguajes de script (lenguajes interpretados de muy alto nivel, como Perl y Python) gozan de creciente importancia e implantaci´n en el...
tracking img