domingo, 25 de febrero de 2007

Python: programación facil

Hace un tiempo había estado probando este lenguaje de programación llamado Python, en honor a Monty Python. Es un lenguaje muy facil de aprender, de hecho esa facilidad es parte del diseño, pero a pesar de ser facil de aprender, no pierde potencia. Recientemente me vi en la "necesidad" de crear un pequeño programa y decidí darle una nueva oportunidad. No me decepcionó

No es un lenguaje compilable, es un lenguaje interpretado, pero en la actualidad, con la potencia que estamos manejando en nuestras computadoras de escritorio, esta distinción pierde sentido en muchos casos. La ventaja de un programa compilado es su tamaño compacto y su velocidad de ejecución, pero en la mayoría de los casos, para programas hechos por nosotros mismos, esa distinción pierde efecto. Las ventajas de un programa interpretado se concentran en un punto: velocidad de desarrollo, aunque existen otras, suele ser muchísimo más facil portarlos de un sistema operativo a otro.

Para modificar un programa compilado, debemos recompilarlo (completa o parcialmente) y luego ejecutarlo. Si deseamos verificar su funcionamiento paso a paso habra que recompilarlo para agregar los enlaces necesarios para el debugger (el depurador), generando un programa más pesado, y allí correr el debugger. Una vez encontrado el error, debemos modificar el código fuente (o sea el programa que escribimos) y recompilar.

En un programa interpretado, el código fuente es el programa, produciendose la interpretación al momento de ejecutarlo. Si se presenta un error, modificamos el código fuente, y ejecutamos nuevamente. La depuración suele hacerse con el mismo programa interpretador, ejecutando el código fuente paso a paso. Esto se traduce en tiempos muchísimo más pequeños entre modificación y modificación, agilizando enormemente los tiempos de desarrollo.

A estas ventajas de un lenguaje interpretado, Python agrega un interprete de comandos interactivo, donde podemos probar comandos y ver los resultados al momento, orientación a objetos (de hecho, todo en el lenguaje es un objeto, con lo que ganamos muchos métodos predefinidos), pero sin perder la posibilidad de usarlo como lenguaje estructurado. Su sintaxis es muy clara, y el hecho de que debamos indentar si o si los comandos que forman bucles o condicionales agrega aun mayor legibilidad. Por último, el lenguaje es Código Abierto, lo que significa que aquellos que posean los conocimientos pueden modificarlo, y que no hay que pagar licencias, aunque los programas hechos con Python pueden tener la licencia que querramos.

En particular, yo estoy usando Python 2.5, las extensiones para Windows, y el editor Scite, que bien configurado permite ejecutar el programa desde su interior, invocando al intérprete y mostrando la salida de datos.

2 comentarios:

  1. Anónimo8/1/10, 5:49

    Eso es genial amigo yo personalmete estoy empezando a usar python y java, verdaderamente es mas "facil" que java.

    ResponderEliminar
  2. Lo probare =D

    ResponderEliminar