junio 08, 2012

La Filosofía Python

Hace ya poco más de un mes tuvimos en Ica (Perú) el evento FLISOL del que lamentablemente por circunstancias personales no pude disfrutar tan plenamente como me hubiese gustado, sin embargo, fue muy instructivo escuchara a Antonio Ognio disertando respecto a la “Filosofía del Software Libre”, espero que alguien lo haya grabado y llegue a publicarlo (si es que aún no lo han hecho).
Pero en esta ocasión, investigando y buscando material para organizar una colección de recursos para aprender y desarrollar con Python, era inevitable hallar lo que se denomina “La filosofía Python”, muy similar a la filosofía UNIX, es un código que enaltece la legibilidad y transparencia de las fuentes.
Tal es así que al código que cumple esas premisas se dice que es “pythonic” (algo sí como paytónico o pitónico en español), por el contrario, el código enredado y complicado es “unpythonic”.
El llamado el Zen de Python (Tim Peters) menciona estas reglas, las mismas que se deben mostrar desde su versión 2.1.2 al ejecutar “import this”, estos puntos son:

  • Bello es mejor que feo.
  • Explícito es mejor que implícito.
  • Simple es mejor que complejo.
  • Complejo es mejor que complicado.
  • Plano es mejor que anidado.
  • Disperso es mejor que denso.
  • La legibilidad cuenta.
  • Los casos especiales no son tan especiales como para quebrantar las reglas.
  • Aunque lo práctico gana a la pureza.
  • Los errores nunca deberían dejarse pasar silenciosamente.
  • A menos que hayan sido silenciados explícitamente.
  • Frente a la ambigüedad, rechaza la tentación de adivinar.
  • Debería haber una -y preferiblemente sólo una- manera obvia de hacerlo.
    Etiquetas de Technorati:
  • Aunque esa manera puede no ser obvia al principio a menos que usted sea holandés (Por Guido van Rossum, de esta nacionalidad, creador del lenguaje).
  • Ahora es mejor que nunca.
  • Aunque nunca es a menudo mejor que ya mismo.
  • 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 (namespaces) son una gran idea ¡Hagamos más de esas cosas!
Estas ideas explican en parte porque es el favorito de un buen grupo de desarrolladores, si te interesa comenzar a probarlo es posible que te ayude conocer algunas de estas herramientas prácticas, AprenderPyton.org y los recursos en Python.com.ar.
¡Bon apetit!

No hay comentarios.:

Publicar un comentario

Tu comentario