Django

Django es el marco de trabajo principal para crear aplicaciones web en Python, famoso por convertir la descripción de sus datos en un panel de gestión que funciona.

También conocido como framework Django framework web de Python Django Python

Definición

Django es un marco de trabajo gratuito para crear sitios y aplicaciones web en lenguaje Python. Un marco de trabajo es una caja de piezas ya hechas: servir una página, guardar la información y dejar entrar a alguien con su usuario son tareas resueltas antes de que empiece su proyecto. Django se describe a sí mismo como el marco para perfeccionistas con fecha de entrega, y esa frase explica bien por qué lo eligen los equipos con prisa.

Su parte famosa es el panel de administración. Usted describe sus datos una sola vez, con palabras sencillas — un paciente tiene nombre, teléfono y fecha de nacimiento — y Django convierte esa descripción en una oficina interna que funciona. Obtiene listados, búsqueda, alta, edición y borrado, con acceso por usuario y permisos distintos para cada empleado. Como nada de eso cuesta una semana más de trabajo ni una factura más, una herramienta interna que usan diez personas puede estar casi lista el primer día.

Aquí está la trampa, y cae en ella el cliente más a menudo que el programador. El panel parece terminado, así que se enseña en una reunión y todos salen creyendo que el proyecto está casi listo. Lo que vieron, sin embargo, es un editor de datos para personal de confianza, no una pantalla pensada para el trabajo diario. Por eso una recepcionista que agenda cuarenta citas al día necesita una pantalla con calendario, no tres tablas escondidas dentro de un menú. Por la misma razón, ese panel nunca debe entregarse a sus clientes. Cuando Linkysoft construye sobre Django lo dejamos para la oficina y diseñamos aparte las pantallas del día a día. Decirlo en la primera semana evita que un proyecto de aplicación web se atasque en el tercer mes.

La segunda razón para elegir Django es el lenguaje que tiene debajo, porque casi todo el análisis de datos y el aprendizaje automático se escribe en Python. Suponga que su sistema deba leer algún día sus propios números y adivinar qué artículo reponer, o qué factura se pagará tarde. Django mantiene entonces la web y ese trabajo de predicción en un solo lenguaje y un solo equipo, y ese ahorro es el motivo honesto para preferir Django frente a una herramienta igual de buena en otro lenguaje.

Django además viene prudente de fábrica. Las contraseñas se guardan cifradas y los formularios están protegidos contra un truco habitual en el que otra web envía una petición en su nombre. El texto que escribe un visitante también se trata con cuidado antes de llegar a la base de datos. Todavía puede escribir algo inseguro, pero solo si se empeña en ello. Nada de eso sustituye una revisión de seguridad antes de salir a producción, y por eso en Linkysoft la contamos dentro de la obra y no como un extra.

Preguntas sobre Django

¿Django es un lenguaje de programación?
No. El lenguaje es Python. Django es un conjunto de piezas ya escritas en Python que evita rehacer lo mismo en cada proyecto.
¿Pueden mis clientes usar el panel de administración de Django?
No. Está hecho para personal de confianza y enseña los datos tal como los guarda la base. Los clientes necesitan pantallas pensadas para ellos, con solo lo que pueden ver.
¿Django aguanta un sitio grande?
Sí. Servicios muy grandes llevan años funcionando con él. Lo que limita a una web con mucho tráfico suele ser la base de datos, las imágenes y cómo están escritas las consultas, no el marco.
¿Elijo Django o un framework de PHP?
Los dos hacen bien el mismo tipo de sistema. Elija el que su equipo pueda mantener y contratar. Django gana si el plan incluye análisis de datos o predicción, porque ese trabajo ya está en Python.
¿Django cuesta algo?
El marco es gratuito y abierto, sin licencia que comprar. Sus costes son los programadores, el servidor donde corre y el mantenimiento tras el lanzamiento.

¿Sigue sin ver cómo se aplica esto a su proyecto?

Cuéntenos qué está construyendo y le responderemos en lenguaje claro.