[Python-es] Artículo python

Ricardo Naranjo Faccini gramo en skina.com.co
Mar Abr 2 06:40:07 CEST 2002


Me invitaron como expositor al II Congreso Nacional de Software Libre en
Colombia para exponer mi conferencia de python, para las memorias he
bajado un par de tutoriales de python y tkinter y escribí un artículo
basado en el artículo que escribió Erik Raymond en la revista Linux
Journal de mayo de 2000.

Anexo el artículo para que me envíen sus comentarios o complementos (si
creen que hace falta algo). Aún esta por terminarse, no he escrito sobre
los módulos y librerías, el manejo de objetos ni de aplicación del
lenguaje a casos reales.

Agradesco de antemano toda la ayuda que me brinden y por supuesto está
disponible para que hagan uso de él si les gusta.
-- 
   @..@    Ricardo Naranjo Faccini            Tel: (1) 257-9832
  (----)   Ingeniero Civil                    Calle 95 #32-35
 ( >__< )  M.Sc. Ing. de Sistemas y Comp.     Barrio La Castellana
 ^^ ~~ ^^  gramo en skina.com.co                 Santafe de Bogota
  Skina    http://www.skina.com.co            Colombia, S.A.
------------ próxima parte ------------
Título del trabajo
------------------
PYTHON: ¿OTRO LENGUAJE INTERPRETADO?

Nombre y apellidos de cada autor 
--------------------------------
Ricardo Naranjo Faccini

nombre del centro o institución donde realizaron el trabajo, si procede 
-----------------------------------------------------------------------
Skina Ltda.

Dirección electrónica
---------------------
gramo en skina.com.co

Introducción
------------
El lenguaje de programación Python fué escrito por Guido Van Rossum en 1991, en este momento cual se perfila como el más facil de aprender para estudiantes y profesionales de cualquier disciplina técnica, también como el más versátil y de mayor crecimiento en el momento. Durante la presentación se muestran brevemente las características que le dan potencia al lenguaje, se realiza un recorrido por los módulos de soporte adicionales y a Jpython: el superSet de Java para desarrollo rápido de aplicaciones.

Objetivo
--------
- Presentar la historia del lenguaje de programación Python
- Resaltar las ventajas de este lenguaje
- Advertir sobre las limitaciones y desventajas
- Introducir al asistente en el uso del lenguaje de programación
- Informar los puntos de partida para el aprendizaje de este lenguaje

Contenido y Métodos
-------------------
Se realizará una presentación de la problemática actual de los programadores la cual ha llevado a buscar lenguajes mas versátiles y a través de ella se irá mostrando como apareció este lenguaje de programación y la forma como fué popularizándose.

Python, ¿Otro lenguaje interpretado más?
----------------------------------------

Segúramente la mayoría de los lectores de este artículo no habrán escuchado jamás hablar del lenguaje de programación Python, inclusive, pensarán que es otro lenguaje de programación utilizado únicamente por su autor y por los amedrentados alumnos de alguna clase de introducción a la programación en algún lugar del primer mundo. Lo que no es bien divulgado es que este robusto lenguaje de programación es la base para las herramientas de configuración de la distribución RedHat desde sus inicios, adicionalmente no tiene nada de nuevo en absoluto, fué desarrollado por Guido Van Rossum en 1991, basándose en el esquema de licenciamiento proveido por la licencia GPL de GNU, al mismo tiempo que Linus Torvalds desarrollaba las primeras versiones del sistema operativo GNU/Linux. En este momento Python es un lenguaje soportado en la mayoría de los sistemas operativos disponibles, tanto libres como comerciales.

Cuando el autor de Python comienza a realizar el desarrollo orienta sus esfuerzos a la especificación de una nueva sintaxis en extremo simple que brinde un sentimiento de naturalidad en el desarrollo, haciéndo que todas las instrucciones de un complejo programa sean evidentes a los ojos de un programador novato.  Sin embargo, no se limitó a la sintaxis, también se implementó un interpretador del lenguaje que realizaba un eficiente manejo de la memoria, una robusta interacción con el sistema operativo en el cual estuviera soportado y que permitia facilmente tener cooperación con otros programas.

En el momento en que nace python existían varias alternativas para los programadores, la lista la encabezaban los lenguajes C y Perl, el primero en extremo especializado, brinda la gran posibilidad de interactuar en alto nivel con los dispositivos informáticos. Sin embargo en C, por ser un lenguaje altamente especializado, la realización de programas requiere igualmente un entrenamiento que puede tomar años antes de dominar el lenguaje. Durante este entrenamiento un programador puede generar fácilmente código erróneo y nefasto para un equipo.

Por otro lado se encontraba Perl, lenguaje utilizado actualmente por el 85% de las páginas WWW, el cual se perfila hoy como el lenguaje interpretado más rápido y completo. El interpretador de perl fué desarrollado pensando en la eficiencia. Un claro ejemplo de ello se observa cuando se requiere realizar el postprocesamiento de información almacenada archivos tipo texto de gran tamaño, Perl realiza este tipo de tareas en rangos de tiempo sustancialmente menores.

El grán obstaculo presentado por Perl está basado en la peculiar sintáxis que utiliza, la cual se caracteriza por tener comandos en extremo crípticos y adicionalmente tiene la posibilidad de realizar los mismos procedimientos de varias maneras diferentes.

En el momento en que se comienza a utilizar perl para realizar desarrollos, el programador queda deslumbrado por un gran conjunto de comandos muy concretos para realizar labores complejas y comieza poco a poco a aprender una serie de artificios del lenguaje que cada vez le permiten escribir en menor cantidad de instrucciones los mismos algoritmos. Un programa en Perl, escrito por un experto, se convertirá en un jeroglífico ejipcio a los ojos de un programador novato, inclusive, un programador entrenado por una escuela diferente tendrá dificultades para la interpretación del código. Por lo tanto, lo que en un principio parece un lenguaje excéntrico, se convierte en una pesadilla en el momento en que hay que hacer mantenimiento a un programa de 300 líneas o más dos o tres meses después de haber sido desarrollado inicialmente.  Ese es el momento en que el programador advierte las dificultades de este lenguaje.

Introducción al lenguaje Python
--------------------------------
La primera sorpresa asombrosa al trabajar en este lenguaje de programación es que la indentación del código deja de ser un simple adorno para convertirse en una utilidad del lenguaje, en efecto, es necesario realizar una correcta indentación durante la escritura del código o el programa reportará errores. En un principio es algo extraño y confuso para un programador que no utilice la indentación a diario, pero es una característica muy sencilla y después de escribir unas pocas líneas de código el desarrollador se ha acostumbrado a ella.

Un segundo impacto sucede en el momento en que se va a definir una variable, el sistema se encarga del manejo de la memoria de forma tal que no hay necesidad de declarar la existencia de las variables, símplemente se le asigna el valor y elinterpretador del lenguaje se encarga del resto. Mas importante aún es que el interpretador tiene, en la definición de los operadores, capacidad para realizar operaciones entre variables de diferente generando resultados coherentes con aquello que la intuición matemática de un programador esperaría.

Esta segunda característica puede llegar a ser un problema, fuente de errores de programación, sin embargo, esto se compensa con la gran funcionalidad obtenida al permitir realizar este tipo de operaciones.

En el momento en que se necesita manejar una cadena de caracteres, un vector, un arreglo indexado o una lista se presenta la tercera sorpresa, el manejo de este tipo de estructuras es total y absolutamente evidente y sencillo. El manejo de particiones de las estructuras es bastante cómodo al igual que la realización de las búsquedas de elementos en ellas

---------módulos y librerías----------
---------jpython---------
---------Aplicación a casos reales---------
...
...
...

Puntos de partida
------------------
www.python.org
www.pythonware.com/library/tkinter/introduction


Bibliografía
------------
Revista Linux Journal, Special Supplement, Mayo 2000. 

FICHA TÉCNICA DEL ARTÍCULO
--------------------------
COPYRIGHT
=========
Este artículo es Copyright 2002 de Ricardo Naranjo Faccini y se distribuye bajo las siguientes condiciones: 
Su distribución, modificación y copia tanto parcial como total es libre siempre y cuando se conserven los derechos morales de(l) (los) autor(es) haciendo mención de el(llos) como autor(es), co-autor(es) o reseña bibliográfica en caso de copia parcial.
Al distribuirlo por medios electrónicos es obligatoria la conservación del mensaje de copyright.
1500 palabras


Más información sobre la lista de distribución Python-es