Si bien se puede empezar a programar en cualquier editor de texto, proyectos medianos y grandes necesitan de librerías y otro tipo de recursos. Es por ello que existen las frameworks que ofrecen una base para empezar a desarrollar. Cada lenguaje de programación tiene frameworks específicas. Por supuesto, Python no es la excepción, de modo que puedes encontrar una gran variedad de recursos de acuerdo a las necesidades de tu proyecto. En este artículo hemos listado algunas Python frameworks con características básicas que te pueden ser de ayuda al aprender este popular lenguaje.
Bottle
Bottle es una framework ligera y rápida para Python. No tiene dependencias externas, a excepción de la Librería Estándar de Python. Se puede usar en conjunto con plantillas de Cheetah y Mako para agilizar el proceso de desarrollo e incluso existen plugins que puedes instalar para añadir mayor funcionalidad a esta framework.
Cyclone.io
Cyclone.io es una framework que implementa la API de Tornado como un protocolo para Twisted, otra popular framework para Python creada en el 2002. Tornado también es otra framework para Python y su API para crear aplicaciones web es bastante poderosa, por ello Cyclone hace uso de esta herramienta en su propia framework. De esta manera, Cyclone.io combina los puntos fuertes de ambas frameworks para crear una herramienta mucho más poderosa que puede trabajar con servidores híbridos y manejar HTTP de manera efectiva.
CherryPy
CherryPy es una de las framework más antiguas que se encuentran disponibles en la actualidad para Python. Permite a los desarrolladores crear aplicaciones web de la misma manera que lo harían en cualquier otro programa orientada a objetos. Como consecuencia, el código fuente se reduce y se puede obtener en menor tiempo. También es compatible con los sistemas de plantillas más populares.
CherryPy se adapta a la funcionalidad y estructura estándar de Python, de modo que en sí el programa sólo se concentra en que seas capaz de desarrollar aplicaciones web utilizando menos código.
Tornado
Tornado es una framework creada en el 2009 por FriendFeed. Tornado te puede servir para realizar pruebas de conexión pues es fácilmente escalable a miles de conexiones abiertas. Es perfecta si estás desarrollado aplicaciones que requieren una conexión de tiempo extendido a cada usuario. También puedes usarlo para crear páginas estáticas simples.
Flask
Flask es una micro-framework basada en Werkzeug y Jinja2. Se ha desarrollado teniendo en mente a los desarrolladores principantes, de modo que puedan iniciar a usar la framework de manera inmediata. Flash es simple y ligera y está compuesta por módulos. Si bien es cierto que la framework en sí no parece tener muchas características atrayentes, puedes añadir una serie de extensiones.
Flask puede ser una buena herramienta para iniciarse en Python y podrías poner en práctica no sólo tus conocimientos sino aprender sobre buenas prácticas y una buena organización de código.
Klein
Klein es una micro-framework para poder desarrollar servicios en Python. Su campo de pruebas es bastante completo y de utilidad para los programadores más meticulosos. Ha sido desarrollada en base a populares componentes como Werkzeug.
ObjectWeb
ObjectWeb es una framework rápida y minimalista que no depende de librerías externas. Ha sido desarrollada para que se use Python como lo que es: un lenguaje de programación orientado a objetos. ObjectWeb es compatible con los estándares CGI y WSGI.
Pecan
Pecan es una framework bastante ligera. Su objetivo no es ser un framework completa, por el contrario Pecan se concentra en todo lo relacionado a HTTP. De modo que es una framework bastante básica que podría serte de utilidad en conjunto con otras herramientas que tengan mayores funciones.
Django
Django es una framework de alto nivel que promueve el desarrollo rápido. Es también es una de las frameworks más populares y completas y toma especial importancia a los temas de seguridad, de modo que ayuda a los desarrolladores a detectar fallos en su código que podrían comprometer la seguridad de la aplicación.
Django es gratuita y de código abierto. Como es de esperarse de una framework tan popular, tiene un gran comunidad que la respalda y está siendo constantemente mejorada por desarrolladores experimentados.
Itty.py
Itty.py se puede considerar como una framework experimental y se ha visto influencida por micro-frameworks como Sinatra. Puede ser una buena framework para estudiar e incluso experimentar si eres lo suficientemente curioso. Sin embargo, para proyectos pequeños o grandes, recomendamos usar otra framework.
Morepath
Morepath es una micro-framework flexible y sencilla de usar. Puedes extender sus funciones y tiene todas las herramientas necesarias para crear servicios web REST. Colocar permisos es sencillo y flexible, de modo que tu aplicación funcione como deseas. Asimismo, asegura la creación de fuertes hipervínculos en la web.
Web.py
Web.py es una framework para Python sencilla pero poderosa. Con Web.py puedes crear aplicaciones web en Python. Se caracteriza por ser sencilla de usar y no tener limitaciones, así que es realmente preferida por usuarios a los que es gusta experimentar. Puede que no tenga muchas características, pero se puede integrar con otras herramientas para ciertos proyectos. De tal manera que obtienes un framework que sólo contenga lo necesario para tus proyectos.
Web.py es de dominio público, así que puedes usarla sin restricciones.
Pyramid
Pyramid es una framework de código abierto que combina Pylons 1.0 y repoze.bfg. También fue una de las primeras frameworks en ser compatible con Python 3. El objetivo de Pyramid es convertirse en una herramienta rápida y confiable para los desarrolladores, para ello ofrece una completa documentación que permite a los usuarios familiarizarse con la interfaz rápidamente. Pyramid puede ser la framework para ti si estás desarrollando proyectos con API o aplicaciones web completas como gestores de contenido, por ejemplo.
En conclusión…
La mayoría de frameworks mencionadas son ligeras y sencillas, de manera que pueden ser perfectas para principiantes en Python que recién empiezan a aprender, así como aquellos que desean paracticar el desarrollo de tareas específicas. Hemos incluido también Django como una opción para aquellos que buscan una framework más completa ya ques es una de las frameworks más populares. Esperamos que hayas encontrado alguna nueva framework que te resulte especialmente útil en tu aprendizaje.