Apariencia
🧠 Conceptos — Python para Backend
Ideas y teoría del curso, explicadas con mis propias palabras. Cada concepto enlaza a la clase donde se vio.
| Concepto | Qué es | Clase |
|---|---|---|
| Backend | La lógica invisible de una app: recibe, valida, procesa, almacena y responde | Clase 1 |
Entorno virtual (venv) | Aísla las dependencias de cada proyecto Python | Clase 1 |
| Tipos de datos básicos | int, str, float, bool, None — determinan qué operaciones se pueden hacer con un dato | Clase 1 |
| Lista vs. diccionario | Lista: colección ordenada por índice. Diccionario: pares clave-valor | Clase 1 |
Type hints (-> int, param: str) | Pistas de tipo en una función; ayudan a leer el código, no se validan en ejecución | Clase 1 |
| Módulo | Archivo .py separado con funciones reutilizables, se importa con from archivo import funcion | Clase 1 |
try / except / raise | Manejo de errores: capturar excepciones esperadas y lanzar las propias sin detener el programa | Clase 1 |
| Mutabilidad / aliasing | Listas y dicts se pasan "por referencia": modificarlos dentro de una función afecta al objeto original | Clase 1 §9 |
dataclass | Define la forma de una entidad con tipos (antesala de los BaseModel de Pydantic) | Clase 1 §11 |
| Excepciones propias (jerarquía) | Clases de error del dominio (class MiError(Exception)) para distinguir tipos de fallo y mapearlos a códigos HTTP | Clase 1 §12 |
logging | Registro de eventos con nivel de severidad (INFO/WARNING/ERROR), reemplaza a print en servicios reales | Clase 1 §13 |
| Variables de entorno | Configuración sensible (host de BD, API keys) fuera del código, vía os.environ / .env | Clase 1 §14 |
| Comprehensions | Forma compacta de filtrar/transformar listas y diccionarios en una línea | Clase 1 §15 |
| Import de librería vs. nombre de tu archivo | Una clase importada de una librería (ej. Session de sqlalchemy.orm) sale siempre de esa librería, sin importar cómo nombres tus propios archivos (db/database.py o db/session.py, da igual). Solo tus propios imports (from db.database import Base) tienen que coincidir con el nombre real de tu archivo | Clase 4 |