CategoríaYo-qué-sé

8 de marzo

Va por vosotras…

import this: El zen de Python

A finales de los ochenta, un programador del Centro para las Matemáticas y la Informática de los Países Bajos (CWI, Centrum Wiskunde & Informatica), creó este nuevo lenguaje interpretado de programamación llamado Python (sí, es un homenaje a los Monty Python del que él es un fiel admirador). Debía ser sencillo, legible…

Aunque no es el único autor, Guido van Rossum (el programador en cuestión), se tomó muy en serio «vigilar» la filosofía que se había marcado al principio del proyecto, lo que le ha valido el sobrenombre de «Benevolente Dictador Vitalicio» en inglés, «Benevolent Dictator for Life» o, para abreviar, «BDFL». La versión 1.0 de Python vio la luz en enero de 1994.

Algunos años más tarde, Tim Peters, uno de los entusiastas programadores de Python resumió de forma concisa, casi en forma de poema, los principios de diseño en los que se basa Python y por los que cualquier programador en este lenguaje debe guiarse. De los veinte principios, solamente diecinueve han quedado escritos. Una traducción libre de estos principios podría ser algo así:

Hermoso es mejor que feo.
Explícito mejor que implícito.
Simple, mejor que complejo y
Complejo mejor que complicado.
Llano mejor que anidado.
Disperso es mejor que denso.
La legibilidad importa.
Los casos especiales no lo son tanto como para romper las reglas.
Aunque lo pragmático gana a la pureza.
Los errores no deberían pasar desapercibidos
A menos que se silencien explícitamente.
Frente a la ambigüedad, rechaza la tentación de adivinar.
Debería haber una —y preferiblemente sólo una— forma obvia de hacerlo,
Aunque esa forma no sea tan obvia a primera vista a menos que seas holandés.
Ahora es mejor que nunca,
Aunque nunca es, a menudo, mejor que inmediatamente.
Si la implementación es difícil de explicar, es una mala idea.
Si la implementación es fácil de explicar, puede que sea una buena idea.
Los espacios de nombres son una excelente idea, ¡tengamos más como ésa!

Desde el punto de vista de la programación estos diecinueve principios marcan la diferencia cuando escribes código. Tal vez, sólo tal vez, sean una buena filosofía llevada a otros campos de nuestra vida ¿no creéis?

P.D. Desde la versión 2.1.2, Python incluye estos puntos (en su versión original en inglés) como un huevo de pascua que se muestra al ejecutar la orden import this.

Referencia original en la web oficial de Python: https://www.python.org/dev/peps/pep-0020/

A %d blogueros les gusta esto: