29 julio 2012

Programming in Python 3: A Complete Introduction to the Python Language

 Python es un lenguaje tremendamente sencillo de aprender. Con experiencia en otro lenguaje de programación de alto nivel es posible aprender sus bases en apenas una tarde y hacer proyectos medianamente complejos en no más de un fin de semana.

Sin embargo esta sencillez es un arma de doble filo. Es fácil pensar quedarse en lo rudimentos y no avanzar más allá contentándose con utilizarlo como un mero lenguaje de script. Pero lo cierto es que python es un lenguaje completo multiparadigma Turing-completo que permite hacer cualquier cosa que haga otro lenguaje de programación. Todo ello con una claridez, sencillez, eficacia y rapidez de desarrollo de la que carecen la mayor parte de los otros lenguajes.

El título del libro hace referencia a Python 3, la nueva generación de este lenguaje que ha supuesto un salto evolutivo de tal nivel que ha sido imposible asegurar la retrocompatibilidad completa con las anteriores versiones. Sin embargo, lo cierto es que el código expuesto en el libro supone una verdadera guía de estilo que, de seguirse al desarrollar código en Python 2.7, debería asegurar la fácil compatibilidad de dicho código a la hora de portarlo a Python 3. El contenido es muy completo, abarca desde los rudimentos (flujos de control, tratamiento de cadenas, acceso a ficheros) hasta técnicas avanzadas (decoradores, gestores de contexto, functores, clases abstractas, metaclases y un gratificante etcétera) que descubrirán al lector nuevos y poderosos recursos de programación para hacer que traducir los conceptos de nuestra mente en codigo fuente sea prácticamente inmediato. Todos los conceptos están ilustrados con código limpio, bien comentado y perfectamente entendible.

En resumen, un gran libro tanto para principiantes que quieran empezar desde cero como para programadores que quieran profundizar en este lenguaje y sacarle todo el jugo. Todo ello sin contar con que una vez finalizado, el libro supone una referencia valiosísima en la estanteria de cualquier programador.