Bienvenidos al Curso de Python y Django¶
1. Introducción¶
En este curso aprenderás los fundamentos de Python y cómo usar el framework Django para desarrollar aplicaciones web. El curso está diseñado para principiantes que no tienen experiencia previa en programación o desarrollo web, pero también será útil si ya tienes algo de experiencia y deseas profundizar en estas tecnologías.
2. Objetivos del Curso¶
Al finalizar el curso, serás capaz de:
- Comprender los fundamentos de Python.
- Crear aplicaciones web utilizando Django.
- Utilizar bases de datos en tus aplicaciones Django.
- Desplegar aplicaciones web a un servidor.
3. Requisitos¶
Este curso está diseñado para ser accesible para principiantes. Sin embargo, para seguirlo con éxito, necesitarás:
- Un ordenador con conexión a Internet.
- Instalar Python (se te guiará en los primeros pasos).
- Un editor de texto adecuado para escribir código (se recomienda Visual Studio Code).
4. Estructura del Curso¶
El curso está dividido en varios módulos, cada uno cubriendo un tema clave:
Módulo 1: Introducción a Python y al Desarrollo Web¶
- 1.1 Introducción a Python
- 1.2 Características de Python
- 1.3 Instalación de Python en tu ordenador
- 1.4 Primeros pasos con Python
Módulo 2: Fundamentos Básicos de Python¶
- 2.1 Sintaxis Básica de Python
- Variables, tipos de datos (números, cadenas de texto, listas).
- Operadores básicos: suma, resta, multiplicación, etc.
- Comentarios en Python y por qué son importantes.
-
2.2 Estructuras de Control
- Condicionales (
if,else). - Bucles (
for,while). - Ejercicios simples para practicar estas estructuras(calculadora, cuenta regresiva).
- Condicionales (
-
2.3 Listas (arrays) en Python
- ¿Qué es una lista y cómo se usa?
- Operaciones básicas con listas (añadir, eliminar, recorrer).
-
2.4. Proyecto: Gestión de Tareas
- Crear un programa simple para gestionar una lista de tareas usando listas y estructuras de control.
- Funcionalidades: añadir tarea, eliminar tarea, mostrar todas las tareas.
-
2.5 Funciones en Python
- ¿Qué son las funciones?
- Cómo definir y usar funciones en Python.
- Ejercicio: Crear una función que calcule el área de un círculo.
-
2.6 Trabajar con Módulos en Python
- ¿Qué es un módulo y por qué es útil?
- Cómo crear un módulo en Python.
- Importar y usar un módulo en otro archivo Python.
- Importar funciones específicas de un módulo.
- Ejercicio: Crear un módulo que contenga funciones matemáticas y luego importarlas en un archivo separado para usarlas.
Módulo 3: Introducción a Django y la Creación de tu Primera Web¶
- 3.1 ¿Qué es el Desarrollo Web?
- ¿Qué es el desarrollo web? (Frontend vs Backend)
- Modelo Vista Controlador (MVC) y su importancia en el desarrollo web. Explicación de sus componentes.
- 3.2 ¿Qué es un Framework Web?
- Explicación de qué es un framework web y su propósito.
- ¿Cómo un framework web facilita el desarrollo de aplicaciones?
- Alternativas populares Frameworks web para Python (Django, Flask, Ruby on Rails, etc.).
- 3.3 ¿Qué es Django?
- Explicación simple de qué es Django y su propósito.
- ¿Cómo Django facilita el desarrollo de aplicaciones web?
- Comparación con el desarrollo tradicional de aplicaciones web sin frameworks.
- 3.4 Instalación de Django
- Instalación de Django (y virtualenv para entornos virtuales).
- Crear un proyecto Django desde cero.
- Qué es un "view", una "url", y cómo se configuran en Django.
- 3.5 El Primer "Hola Mundo" en Django
- Crear tu primera vista (view) en Django.
- Configuración de una URL para mostrar el mensaje “Hola Mundo” en tu navegador.
- Ejercicio: Modificar el mensaje para que diga algo personalizado.
- 3.6 Parámetros en las rutas (URLs)
- ¿Qué son los parámetros en las URLs y para qué se usan?
- Cómo definir rutas con parámetros en Django.
Módulo 4: Plantillas en Django - Creando Páginas Web Dinámicas¶
- 4.1 ¿Qué es una Plantilla?
- Explicación básica de qué es una plantilla en Django y por qué son importantes.
- Uso de variables en las plantillas para mostrar contenido dinámico.
- 4.2 Uso de contextos en plantillas
- ¿Qué es un contexto y cómo se pasa desde la vista a la plantilla?
- Ejemplo: Crear una vista que pase una lista de elementos a una plantilla y los muestre en una lista HTML.
- 4.3 Archivos estáticos en Django
- ¿Qué son los archivos estáticos y cómo se utilizan en Django?
- Cómo agregar archivos CSS y JavaScript a tu proyecto Django.
- 4.4 Herencia de Plantillas y enlaces
- Definir bloques en la plantilla base para que las páginas hijas puedan sobrescribirlos.
- Ejercicio: Crear varias páginas que usen la misma plantilla base pero con contenido diferente.
- 4.5 Proyecto: Crear un Sitio Web Simple
- Crear un sitio web con varias páginas (Inicio, Sobre Nosotros, Contacto).
- Usar plantillas y herencia para mantener un diseño consistente.
- Añadir archivos estáticos (CSS) para mejorar el diseño del sitio.
Módulo 5: Trabajando con Formularios en Django¶
- 5.1 ¿Qué son los Formularios Web?
- Explicación sencilla de qué son los formularios y para qué sirven en las aplicaciones web.
- Diferencias entre formularios HTML y formularios en Django.
- 5.2 Crear un Formulario Básico en Django
- Usar el sistema de formularios de Django para crear un formulario simple.
- Validación básica de formularios (por ejemplo, asegurarse de que un campo no esté vacío).
- Ejemplo: Crear un formulario para enviar un mensaje a través de un sitio web.
- 5.3 Manejo de Errores en Formularios
- ¿Qué pasa si un usuario no llena bien un formulario?
- Mostrar mensajes de error y validación en el formulario.
Módulo 6: Modelos y Bases de Datos en Django¶
- 6.1 ¿Qué es un Modelo?
- Explicación simple de qué es un modelo en Django y cómo representa la base de datos.
- Crear un modelo simple para guardar datos (por ejemplo, información de un contacto).
- 6.2 Crear y Migrar Modelos
- Cómo crear un modelo en Django (definir campos, tipo de datos, etc.).
- Uso de migraciones para guardar los modelos en la base de datos.
- Ejercicio: Crear un modelo para guardar artículos de un blog.
- 6.3 Consultas a la Base de Datos
- ¿Cómo obtener datos desde la base de datos usando Django?
- Ejemplo de consulta para obtener todos los artículos de un blog.
Módulo 7: Despliegue de tu Primera Aplicación Django¶
- 7.1 Preparación para el Despliegue
- Qué necesitas saber antes de desplegar una aplicación web.
- Introducción a servidores y bases de datos en producción.
- 7.2 Despliegue de la Aplicación en un Servidor
- Opciones de despliegue sencillas (por ejemplo, usar Heroku para principiantes).
- Configuración de archivos para producción en Django (como
settings.py). - ¿Cómo hacerlo funcionar en un servidor real?
5. Cómo Navegar por el Curso¶
Cada módulo contiene lecciones organizadas en documentos Markdown. Puedes navegar por el curso a través del menú de la izquierda, que te llevará a cada módulo y lección correspondiente.
Consejos:¶
- Sigue el curso a tu propio ritmo.
- No dudes en volver atrás si necesitas repasar un concepto.
- Realiza los ejercicios prácticos al final de cada módulo para reforzar lo aprendido.
6. Temporalización Sugerida¶
| Módulo | Horas |
|---|---|
| Módulo 1: Introducción a Python y al Desarrollo Web | 4 |
| Módulo 2: Fundamentos Básicos de Python | 10 |
| Módulo 3: Introducción a Django y la Creación de tu Primera Web | 6 |
| Módulo 4: Trabajando con Formularios en Django | 5 |
| Módulo 5: Plantillas en Django | 5 |
| Módulo 6: Modelos y Bases de Datos en Django | 6 |
| Módulo 7: Despliegue de tu Primera Aplicación Django | 4 |
| Total | 40 |
7. Recursos Adicionales¶
A lo largo del curso, se proporcionarán enlaces a recursos adicionales, como documentación oficial, tutoriales y videos para que puedas profundizar en los temas que más te interesen.
8. ¡Comencemos!¶
¡Estamos emocionados de que comiences este curso! Haz clic en el Módulo 1 en el menú para empezar a aprender.