Si ya te convertiste en todo un cinturón negro de Python, conoces sus estructuras de datos y hasta los tópicos más avanzados como List Comprehensions y Decoradores, seguramente estás buscando dar el siguiente paso. Ese paso, si te gusta el desarrollo de aplicaciones, podría ser especializarte en desarrollo backend con alguno de los frameworks de este lenguaje: Django, Flask y FastAPI.
Porque, como dicen los grandes maestros de las artes marciales, cuando el alumno llega al cinturón negro, ese significa el principio de su vida como peleador. Comencemos.
Aclaración: si aún no terminaste la trilogía de Cursos de Python que tenemos en Platzi, seguir leyendo es altamente peligroso. De verdad. Hazme caso. Es por tu bien.
…. ¿Terminaste esos tres cursos? Entonces adelante
Si existe un lenguaje más que versátil para construir el motor de tu siguiente aplicación, ese es Python.
¿Sabías ya lo que era un backend? Es muy sencillo, el backend es la sección de una aplicación móvil o web, donde sucede la lógica de negocio. Y la lógica de negocio, no es nada más ni nada menos que la resolución del problema que intenta abordar esa aplicación.
Por ejemplo, vamos a crear una aplicación que sirve para poner en blanco y negro una imágen de la galería de tu celular. Los botones, la interfaz, el formulario para subir la foto, todo lo que puedes ver en definitiva, hace parte del frontend. La pieza de código que convierte efectivamente esa foto a una foto en blanco y negro, es el backend.
Si tu sueño es convertirte en un desarrollador o desarrolladora de aplicaciones, puedes iniciar tu camino tanto aprendiendo frontend como aprendiendo backend. Tú eliges.
Si lo que elegiste es el backend, Python es un gran aliado para poder crear esa lógica de negocio. La que prefieras, no importa que tan compleja sea. Pero hay un problema: el lenguaje por sí mismo no es suficiente.
De hecho, lo es. Puedes construir el backend de tu aplicación directamente desde Python, pero será un verdadero dolor de cabeza.
Para lograr este heroico cometido, se crearon los famosos y tan populares frameworks de desarrollo web. Hay decenas. Seguramente me equivoco, deben haber cientos de ellos. Uno para cada lenguaje, para cada gusto, para cada personalidad o estilo de trabajo incluso.
Aquí no vinimos a verlos a todos, solo a los más importantes, y en Python, solo tres ocupan este podio: Django, Flask y FastAPI.
Con los tres se pueden crear las mismas cosas. Son igual de válidos. Pero sí es cierto que cada uno tiene sus puntos fuertes, como también sus puntos débiles. Conozcamoslos uno a uno.
Django es un framework robusto y cargado. Esas dos palabras lo definen perfectamente. Con una documentación de más de 3000 páginas te llevará de la mano a crear la aplicación web de tus sueños.
¿Qué lo hace sumamente especial y diferente al resto? Tiene el mejor sistema de control y manejo de datos que puedas encontrar en el ecosistema de Python.
Cuenta con un administrador ya programado de base extremadamente potente. Serás capaz de realizar las tareas más comunes en tu base de datos, como crear, borrar, actualizar y leer registros de tus tablas. Y esto se traduce, en la práctica, en poder dar de alta a un usuario y modificar su información rápidamente, si es que tu aplicación posee un sistema de login. O, también, por ejemplo, eliminar rápidamente una película de tu plataforma por errores en la subida, si es que estás construyendo el próximo Netflix.
Django cuenta con un 45% de acogida entre todos los desarrolladores web que trabajan con el lenguaje de la serpiente.
Y, con compañías como Instagram y Platzi usándolo todos los días, es una gran elección para comenzar.
5 años más jóven que Django, y nacido para destronar al rey. ¿Tienes una idea en mente, pero no quieres pasar por todo el proceso de configuración y establecimiento del entorno que tiene Django? Flask es tu elección. ¿Te interesa usar una base de datos no relacional en tu app? Django te lo permite… pero permíteme desaconsejarte hacer eso. ¿Por qué? Porque Flask permite realizar una conexión mucho más sencilla y con menos pasos a estos novedosos almacenes de datos.
Con un 46% de uso entre todos los desarrolladores web con Python, y con empresas como Netflix y Reddit apoyándose en este proyecto durante cada jornada para hacer vivir sus aplicaciones, es también una gran decisión empezar por Flask.
Con solo tres años de edad, al día de publicación de este blogspot, FastAPI promete convertirse en el framework definitivo para la nueva generación de aplicaciones web que ya están naciendo.
Veloz. Solo esa palabra lo define. Es (y no solo en Python, sino hablando en comparación a todos los otros lenguajes de programación) una de las herramientas más veloces para construir un backend, peleando mano a mano con bestias de la velocidad como Go o Node.js.
¿Quieres hacer menos de 10 líneas de código Python y tener un backend 100% funcional, corriendo en tu computadora? FastAPI. ¿Quieres crear tu primera API (Application Program Interface) para conectar todos los componentes de tu aplicación? FastAPI. Pero, sobre todo… ¿Te interesa que tu aplicación sea una de las más veloces del mercado, y que tus usuarios no paren de admirar los milisegundos que tarda en cargarse la primera página de tu proyecto? FastAPI.
Con un 14% de uso entre todos los desarrolladores web con Python, utilizado por Netflix, Uber, y empresas tan grandes como Microsoft, en Platzi hoy le apostamos a FastAPI.
Sí. Así es. Nos costó elegir. Pero creemos fielmente que iniciar tu camino como cinturón negro en Python de la mano de este framework es la mejor ruta para convertirte en un profesional del desarrollo backend. Y conseguir el trabajo de tus sueños, o incluso crear tu propia empresa.
Te invito, personalmente, a tomar unos de los mejores cursos que vas a ver en tu vida, donde tendré el gusto enorme de ser tu profesor. Te doy la bienvenida al Desarrollo Backend.
Fuentes:
https://www.jetbrains.com/lp/devecosystem-2021/python/
Ojalá una escuela de backend con python! Que profundice más que la ruta de desarrollo con Django. Con cursos de Docker, bases de datos, python, frameworks, un poco de temas de devops, quizás algo de linux. Todo lo necesario para ser un completo Backend Developer con Python!
Tambien he deseado esta escuela! No dudo que pronto la saquen, pero hay que empujar :th
Igualmente, se requiere una escuela así! apoyo la moción!
Me sumo a la idea de una Escuela de Python englobando todos los temas propuestos, bases de datos, python claramente, frameworks, devops, linux e incluso añadiría tema de robótica e inteligencia artificial que están ahora tan de moda. En la parte de robótica es sobre todo micropython.
Compañeros, esa ruta ya existe desde hace años, Desarrollo Backend con Python y Django
Acabo de empezar el Python Challengue, tendre muy presente esto, estoy muy interesado en ser Backend profesional
Ya visualice cada uno de los cursos de FastAPI y son la mejor experiencia, ojala se llegase a crear una escuela de este maravilloso Framework
Excelente post. Estoy aprendiendo Django, tome el curso de Django, pero no enseñaron hacer un API , que es lo que quiero aprender, ya que quiero buscar trabajo lo más pronto posible como backend. Debería hacer el curso de Django Avanzado o comenzar con los nuevos cursos de FastAPI? Que tal es la oferta laboral de FastAPI?
¿A que cursos se refiere con ‘la trilogía de Cursos de Python’?
Curso básico de Python
Curso de Python: Comprehensions, Lambdas y Manejo de Errores.
Curso profesional de Python
A aprender los frameworks de python
Impecable Facundo!🐍 Gracias por continuar aportando a toda la comunidad que te sigue! 👍👍
Excelente, ahora tengo claro cuál es el camino a seguir dentro Python.
Haciendo la trilogía de Python y la bilogía de FastAPI, ¿Se cuenta con el conocimiento suficiente para trabajar como Backend con Python, tomando en cuenta ya saber tecnologías al rededor del desarrollo de software, como Git, Selenium y SQL?
estoy terminando el curso practico de python(el de creacion e un crud), cuando lo termine voy con fast api xd
ya casi termino la ruta de aprendizaje de backend con python
Hola! Me podrías pasar la ruta de aprendizaje backend con python?
Sólo encuentro cursos aislados.
Muchas gracias!
Excelente aportación.
Ya listo con la triologia de Python de Facundo, ahora si a por los Frameworks!
Excelente curso, Todo el tema de las validaciones me ha encantado y con ganas de aprender mucho mas de FastApi.
Excelente aporte
Super. Se entiende todo y como puede servir elegir un framework u otro.
Muy bien explicado, aunque creo que FastAPI le falta madura un poco, no es muy arriesgado poner ciertos segmentos del sistema en esta tecnología ?
I’m ready. See you in class…
Facundo. Gracias por compartir, me diste luz de mis siguientes pasos!!
Estaba esperando esto ❤️
Estoy por tomar los cursos de estos frameworks, sin embargo, creo que no hay uno para Flask, espero que en el futuro agreguen un curso.
Me gusta aventurarme con tecnologías promesas, seguramente me decante por FastAPI!
Pregunta, habrá curso más avanzado de FastAPI e integración con Bases de Datos.
Integración de Bases de Datos con Python, ya llevo muchos cursos y aún no veo nada de eso.
Me ha tocado ver en otros lados.
Para cuando?
Great!! thanks
Esto se está poniendo bien interesante!
memocione!
Excelente todos los curso, actualmente estoy tomando el basico de django y esperando que salga el curso intermedio de django para el 31 de enero.
Hola, estoy terminando la escuela de Data science y me doy cuenta que es difícil presentar mis resultados. ¿Cuál sería el mejor framework para desplegar los modelos de machine learning?
Saludos. Muy buena trilogía de cursos de Python.
Excelente aporte hermano, muchas bendiciones para ti y los tuyos. y ala comunidad de PLATZI y todo su equipo de ayudarnos a crecer y aprender cada día. BENDICIONES DESDE REPÚBLICA DOMINICANA
El problema a la fecha de fast api y es grave es que solo una persona lo mantiene.
Me gustaría profundizar en el ORM de Django.
Desde hace mucho he querido convertirme en un backend developer y hoy llego el día de comenzar esa aventura. Django ahí te voy.
tengo una pregunta o mas bien una observación, si yo deseo usar Django y con la intención de que mi app siga escalando y en un futuro vea que FastAPI, podria yo migrar mi app de Django a FastAPI o debo hacer la app directamente con FastAPI
Había escuchado de FastAPI, no pensaba que fuera tan “fast”, por lo regular en competencias (hackathons) es lo que más se necesita