🇺🇸 English · 🇧🇷 Português · 🇪🇸 Español
Este roadmap acompaña tanto la ruta educativa como la base del repositorio que la sostiene. La numeración de las fases representa la secuencia de aprendizaje prevista, pero el trabajo del repositorio puede anticipar secciones posteriores cuando eso ayude a establecer estándares útiles.
- Completada: el alcance planificado está disponible y revisado.
- En progreso: ya existe material útil, pero el alcance planificado todavía no está cerrado.
- Planificada: la fase todavía no ha comenzado como una sección completa de aprendizaje.
| Fase | Estado | Resultado actual |
|---|---|---|
| 0. Base del proyecto | Completada | Base disponible, auditada y oficialmente completada |
| 1. Fundamentos | Completada | Seis capítulos revisados cubren ejecución, entrada y salida, variables y nombres, tipos de datos incorporados, inspección de tipos y conversión de tipos |
| 2. Textos y números | Completada | Cuatro capítulos revisados cubren creación de strings, métodos comunes, comportamiento numérico y booleano, precisión de punto flotante y funciones numéricas incorporadas |
| 3. Colecciones | Completada | Seis capítulos revisados cubren listas, tuplas, diccionarios, conjuntos y elección de colección según la intención |
| 4. Flujo del programa | Completada | Ocho capítulos revisados cubren condiciones, ramificaciones, coincidencia de patrones estructurales, for, ayudas de iteración, while, control de bucles y elección y combinación de herramientas de flujo según la intención |
| 5. Funciones | Completada | Nueve capítulos revisados cubren def, llamadas, entradas obligatorias, valores retornados, alcance, type hints, valores predeterminados seguros, argumentos flexibles, composición de funciones y flujo explícito de datos |
| 6. Comentarios, documentación y código limpio | Completada | Seis capítulos revisados están disponibles y la sección educativa piloto está oficialmente completada |
| 7. Errores, archivos y módulos | Completada | Cinco capítulos revisados cubren manejo de excepciones, señalización deliberada, I/O seguro de archivos, formatos TXT/CSV/JSON e imports/módulos/paquetes |
| 8. Biblioteca estándar | Completada | Nueve capítulos revisados cubren rutas, fecha/hora, JSON, CSV, logging, colecciones especializadas, iteración lazy, aritmética decimal y operaciones de OS/filesystem |
| 9. Bibliotecas externas | Completada | Cuatro capítulos revisados cubren pandas, openpyxl, requests y pytest con contratos explícitos de dependencias y ejemplos deterministas |
| 10. Proyectos prácticos | En progreso | Los Proyectos 01–05 están completados; el Proyecto 06 Organizador de Archivos está en progreso con planificación determinista, seguridad de colisiones, identidad de filesystem, directorios anclados y commit atómico no-replace |
Las Fases 0–9 están completadas. La Fase 10: Proyectos Prácticos está en progreso con Control de Gastos, Calculadora de Notas, Registro de Usuarios, Analizador CSV y Generador de Informes completados como Proyectos 01–05, mientras que Organizador de Archivos es el Proyecto 06 actual. La fase transforma conceptos ya estudiados en flujos completos con requisitos, decisiones de diseño, implementación, validación, caminos de extensión y discusión de portafolio.
- READMEs principales multilingües
- Estructura inicial escalable
- Guías de contribución multilingües
- Plantillas de pull request e issues en GitHub
- Estándares de la comunidad y orientaciones para reportes
- Formato editorial coherente para los capítulos
- Licencia MIT
- Registros de autoría y mantenimiento
- Flujo basado en pull requests y rama
mainprotegida - Instrucciones del repositorio para colaboradores y agentes de IA
- Guía de desarrollo responsable asistido por IA
- Roadmap y documentación de la estructura en tres idiomas
- Verificaciones automáticas para archivos Python, ejemplos aprobados, enlaces internos y estructura
- Identidad visual original y recursos del repositorio
- Auditoría final de navegación, terminología, accesibilidad y estado
- Marcar oficialmente la Fase 0 como completada
- Refinar y reemplazar los recursos visuales con exportaciones de alta calidad después de completar el encuadre final del logotipo.
- Cómo Python ejecuta un programa
-
print()einput() - Variables y nombres
- Tipos de datos incorporados
-
type()eisinstance() - Conversión de tipos
- Creación e indexación de strings
- Métodos comunes de strings
-
int,floatybool - Funciones numéricas incorporadas:
round(),abs(),min(),max()ysum()
- Creación, indexación y slicing de listas
- Modificar listas y métodos comunes
- Tuplas e inmutabilidad
- Diccionarios: claves y valores
- Conjuntos y valores únicos
- Elegir la colección adecuada
Consulta la ruta de aprendizaje de la sección.
- Condiciones, comparaciones y lógica booleana
-
if,elifyelse -
matchycase: coincidencia de patrones estructurales - Bucles
fore iteración -
range(),enumerate()yzip() - Bucles
whiley repetición guiada por estado -
break,continueyelsede bucles - Elegir y combinar el flujo del programa
La Fase 4 construye intencionalmente condiciones confiables primero, las usa para ramificaciones condicionales, introduce coincidencia de patrones estructurales, avanza hacia la repetición con for, añade ayudas para progresiones numéricas, posiciones e iteración paralela, introduce repetición guiada por estado con while, añade control deliberado de bucles con break, continue y else de bucle y cierra enseñando cómo elegir y combinar esas herramientas según la intención. Los Capítulos 01–08 están completados y la Fase 4 está oficialmente completada.
Consulta la ruta de aprendizaje de la sección.
- Definir y llamar funciones
- Parámetros y argumentos
- Valores de retorno
- Alcance
- Type hints
- Valores predeterminados
-
*argsy**kwargs - Funciones trabajando juntas
- Flujo de datos entre funciones
La Fase 5 está completada. El Capítulo 01 establece def, llamadas, reutilización, orden de ejecución, nombres, pass, None implícito y la conexión con el flujo del programa. El Capítulo 02 añade parámetros obligatorios, argumentos posicionales y por palabra clave básicos, expresiones como argumentos, errores de llamada y seguimiento del flujo de entrada. El Capítulo 03 añade return, resultados reutilizables, retornos por rama y anticipados, None y retornos en tupla. El Capítulo 04 añade nombres locales y globales, namespaces locales por llamada, búsqueda, sombreado, NameError, UnboundLocalError y uso cauteloso de global. El Capítulo 05 añade anotaciones de parámetros y retorno, hints de tipos incorporados y colecciones, -> None, str | None, metadatos de anotaciones y la diferencia entre información estática de tipos, validación en runtime y conversión. El Capítulo 06 añade valores predeterminados, reemplazos posicionales y por palabra clave selectivos, evaluación al definir la función, la trampa de valores mutables y el patrón seguro con None para crear objetos mutables nuevos. El Capítulo 07 añade recolección de cantidades variables de argumentos posicionales y por palabra clave con *args y **kwargs, comportamiento de tupla y diccionario dentro de la función, firmas mixtas simples, type hints básicos para los valores recogidos y la distinción entre recolección en la definición y desempaquetado posterior en la llamada. El Capítulo 08 compone funciones auxiliares y coordinadoras, pasa resultados retornados entre pasos, mantiene explícitas las dependencias mediante parámetros y retornos, combina funciones con condiciones y bucles, distingue cálculo reutilizable de presentación e introduce grafos simples de llamadas. El Capítulo 09 cierra la fase siguiendo el flujo llamador-parámetro-retorno, los vínculos locales de parámetros, reasignación frente a mutación, resultados en tupla y None, pipelines explícitos, transformaciones de colecciones y la diferencia entre grafos de llamadas y seguimientos de flujo de datos.
Consulta la ruta de aprendizaje de la sección.
- Cuándo y por qué comentar
- Cuándo no comentar
- Comentarios útiles y perjudiciales
- Docstrings
- Nombres significativos y código autoexplicativo
-
TODO,FIXME,NOTEy marcadores relacionados - Comentarios frente a logging
- PEP 8 y legibilidad
La Fase 6 está oficialmente completada y proporciona el modelo editorial y de calidad para las demás secciones de aprendizaje.
Consulta la ruta de aprendizaje de la sección.
-
try,except,elseyfinally -
raisey excepciones personalizadas -
open()ywith - TXT, CSV y JSON
- Imports, módulos y paquetes
La Fase 7 está completada. Los Capítulos 01–02 establecen manejo y señalización deliberada de excepciones. El Capítulo 03 añade I/O seguro de archivos y gestión de recursos. El Capítulo 04 añade parsing y escritura de TXT, CSV y JSON con límites explícitos de datos. El Capítulo 05 cierra la fase con módulos, paquetes regulares, namespaces y caché de imports, __name__, main guard, contexto de búsqueda, imports absolutos y relativos, python -m y diseño de dependencias.
Consulta la ruta de aprendizaje de la sección.
La Fase 8 está completada. Los Capítulos 01–08 construyen contratos para rutas, fecha/hora, formatos estructurados, logging, colecciones especializadas, iteración lazy y aritmética decimal. El Capítulo 09 cierra la fase conectando esas bases con estado del entorno del proceso, interfaces path-like, exploración y recorrido de directorios, metadatos, copia, movimiento, eliminación recursiva, capacidades de plataforma y seguridad de archives.
Consulta la ruta de aprendizaje de la sección.
La Fase 9 está completada. El Capítulo 01 introduce pandas 3.0.x para datos tabulares etiquetados. El Capítulo 02 añade automatización de libros con openpyxl 3.1.x. El Capítulo 03 añade contratos HTTP/API con Requests 2.34.x. El Capítulo 04 cierra la fase con contratos de pruebas automatizadas en pytest 9.1.x, cubriendo descubrimiento, assertions, fixtures, parametrización, recursos temporales, monkeypatching, captura, marks, aislamiento determinista y CI. Los ejemplos ejecutables de bibliotecas externas usan el contrato declarado en requirements-external.txt.
Consulta el índice de la sección Proyectos Prácticos.
- Control de Gastos
- Calculadora de Notas
- Registro de Usuarios
- Analizador de CSV
- Generador de Informes
- Organizador de Archivos — proyecto actual
- Flujo Ficticio de Conciliación
- Flujo Simulado de Automatización
El Proyecto 01 establece el contrato de la Fase 10 con requisitos explícitos, modelado de datos validado, dinero exacto con Decimal, persistencia, demostración determinista, cobertura automatizada con pytest, desafíos de ampliación y discusión de portafolio. El Proyecto 02 amplía el contrato con reglas de calificación configurables, agregación ponderada exacta, informe parcial/final explícito y validación centrada en límites. El Proyecto 03 añade datos de identidad canónicos, normalización Unicode e IDNA, prevención de duplicados, índices secundarios, actualizaciones seguras y transiciones explícitas del ciclo de vida sin introducir autenticación. El Proyecto 04 añade schemas CSV estrictos, conversión tipada, separación entre fallos estructurales y fallos de fila, parsing con éxito parcial, identificadores aceptados duplicados, agregación determinista y filtros con la mecánica de la biblioteca estándar expuesta explícitamente. El Proyecto 05 añade ventanas inclusivas explícitas de fechas, validación de identidad del origen, métricas exactas y deterministas de resumen, construcción inmutable del informe, renderización TXT/Markdown, escape específico del formato y escritura UTF-8. El Proyecto 06 añade descubrimiento superficial determinista, planificación inmutable, categorías por sufijo, políticas explícitas de colisión, fronteras de symlink, identidad (device, inode), anclaje de descriptors de raíz/categorías, nombres de staging acotados y commits atómicos no-replace sensibles a la plataforma con renameat2(RENAME_NOREPLACE) en Linux.
Cada proyecto debe incluir:
- requisitos;
- notas de diseño;
- implementación;
- explicación;
- cobertura automatizada del comportamiento importante;
- desafíos de ampliación;
- discusión de portafolio.
Cada fase debe preservar:
- precisión técnica;
- consistencia multilingüe;
- ejemplos originales y seguros para publicación;
- datos seguros desde el punto de vista de la privacidad;
- ejemplos ejecutables de Python cuando corresponda;
- integridad de la navegación interna;
- atención a PEP 8;
- documentación de cambios estructurales relevantes;
- transparencia sobre dependencias y supuestos de versión.
El roadmap evolucionará a medida que el proyecto crezca, pero los cambios deben preservar la progresión desde los conceptos iniciales hasta el trabajo práctico integrado.