fbpx

Si estás empezando en Python, es probable que hayas investigado varios frameworks de desarrollo web. De lo contrario, haz clic en la wiki de Python y comienza a explorar la amplia variedad de frameworks web disponibles. Adelante; te esperaremos.

Abrumador, ¿no? ¿Eliges los frameworks full-stack más populares o investigas para encontrar cuál funciona mejor para tus necesidades? Es difícil porque los frameworks web de Python pueden encajar en muchos procesos, desde la ejecución de un caso de uso único hasta la ejecución de todas las funciones conocidas disponibles. Con nombres como Flask, Django, Tornado, Diesel, Pecan y Falcon, ¿cómo saber por dónde empezar?

 

¿Qué son los frameworks web y por qué son importantes?

Comencemos asegurándonos de estar todos en la misma página. Un framework web es una colección o biblioteca de paquetes o módulos que te facilita la vida al crear aplicaciones web escalables, confiables y fáciles de mantener. Los frameworks facilitan la reutilización del código para operaciones HTTP comunes.

Básicamente, estos frameworks guardan el trabajo que los desarrolladores han aprendido durante los últimos veinte años mientras programaban aplicaciones y sitios. Di adiós a los protocolos, sockets y gestión de subprocesos.

 

Django y Flask: ¿Una valiente película de acción de los 80?

¿Viste alguna vez Tango y Cash? Es una película de acción de policías de 1989. ¿No? Ah, bueno, no era tan buena. Decir “Django y Flask” en voz alta nos recuerda esa película. ¿Sabes que? Tango y Cash son muy parecidos a Django y Flask.

Tango y Cash son dos detectives de narcóticos de diferentes lados de Los Ángeles que abordan los problemas de manera completamente diferente, pero ambos logran hacer el trabajo.

Disciplinado y prístino, Ray Tango (Sylvester Stallone) es un oficial de policía armado —el paquete total como algunos dirían— que está decidido a seguir las reglas.

Gabriel Cash, por otro lado, (Kurt Russell) es más liberal y actúa según sus propias reglas. ¿Ves a dónde vamos con esta analogía? ¿No? Bueno… Avancemos.

 

Pros y contras de Django

Django se denomina comúnmente como un enfoque de framework de “baterías incluidas”, o el “framework para perfeccionistas con plazos definidos”. Esto significa que Django facilita que los desarrolladores de Python se sumerjan rápidamente en las aplicaciones web sin tener que pensar con anticipación en la infraestructura de la aplicación. Básicamente, crea mejores aplicaciones web, más rápidamente y con menos código.

Django está establecido, tiene una excelente documentación y una gran comunidad en línea. Un bloguero dijo: “Los piratas usan Flask, la marina usa Django”, que se siente mucho más descriptivo que nuestra superficial analogía de Tango y Cash.

 

Pros

– Es un software bien establecido con muchos complementos

– El área de administración pensada “fuera de la caja” hace que el desarrollo y la producción de CMS sean muy fáciles

– Soporte ORM

– Organización MVC clara y definida

– Altamente personalizable

– Frameworks de formularios

– Gestión de base de datos sencilla

 

Contras

– Se siente como demasiado software para proyectos pequeños

– Los errores de plantilla fallan silenciosamente de forma predeterminada

– Un proceso solo maneja una solicitud a la vez

– Curva de aprendizaje profunda

– Características abrumadoras

 

Pros y contras de Flask

Flask es un framework relativamente nuevo, en uso solo desde 2010. Flask se considera más “Pythonico” que Django, simplemente porque el código de la aplicación web de Flask es, en la mayoría de los casos, más explícito. Flask es la elección de la mayoría de los principiantes debido a la falta de obstáculos para poner en marcha una aplicación sencilla.

 

Pros

– Extremadamente flexible

– Minimalista sin sacrificar el poder

– Fácil de aprender y usar

– Enrutar URL es fácil

– Núcleo pequeño y fácilmente extensible

 

Contras

– No compatible con async

– Soporte y documentación limitados

– Falta de base de datos/ORM/formularios

– Verdaderamente limitado en funciones

 

¿Por qué no elegir ambos?

Los desarrolladores completos son expertos tanto con Django como con Flask. Una ruta común es comenzar a construir proyectos pequeños y divertidos con un framework simple, como Flask, y pasar a Django a medida que comienzas a comprender los conceptos básicos. En Coding Dojo, enseñamos el full stack de Python que cubre tanto Flask como Django en detalle.

Así que no dudes en ponerte en contacto con Admisión y aclarar todas tus dudas sobre nuestro plan de estudios en Python y los frameworks que nuestros graduados dominan.