01
Objetivo 1 · Módulo I
Fundamentos de la Programación y Lógica con Python
Qué es programar: resolución de problemas con algoritmos. Lenguajes
interpretados vs. compilados, instalación, REPL y scripts .py. Variables
(snake_case), tipos int, float, str, bool, type() y casting.
Operadores aritméticos (+, -, *, /, //, %, **), input(), print() y
formateo con f-strings.
Algoritmos
Variables
REPL
f-strings
02
Objetivo 2 · Módulo I
Control de Flujo y Estructuras de Datos
Condicionales if, elif, else con operadores de comparación y lógicos.
Indentación como regla de oro en Python. Bucles while y for con range(),
break y continue.
Colecciones: listas (índice, slicing, .append(), .pop()), tuplas
inmutables y diccionarios clave-valor.
if/else
for/while
Listas
Diccionarios
03
Objetivo 3 · Módulo I
Modularización, Funciones y Robustez (DRY)
Funciones con def, parámetros, return vs. print, scope local y global.
Parámetros por defecto, *args y **kwargs. Excepciones con try, except,
else y finally.
Lectura y escritura con with open() para .txt y .csv. Módulos estándar
(math, random, os) y pip para librerías externas.
Funciones
try/except
Archivos
pip
04
Objetivo 4 · Módulo II
Cimientos y Creación de Objetos
Entornos virtuales y gestión de dependencias profesionales. Type hinting
para contratos claros en funciones. POO: encapsulamiento de la cámara y
el procesamiento.
Patrón Singleton: una sola instancia de la cámara (recurso de hardware
único) en toda la aplicación.
venv
Type Hinting
POO
Singleton
05
Objetivo 5 · Módulo II
Estructura y Flexibilidad
Herencia y polimorfismo: clases base para detectores. Excepciones
personalizadas (FrameCaptureError). Logging en lugar de print() para
trazabilidad de errores.
Patrón Strategy: cambiar algoritmos de detección (color vs. QR) en tiempo
de ejecución sin alterar la lógica principal.
Herencia
Logging
Excepciones
Strategy
06
Objetivo 6 · Módulo II
Rendimiento y Desacoplamiento
Multithreading: separar lectura de frames del procesamiento para eliminar
lag. Decorador @benchmark para medir tiempos de inferencia.
Patrón Observer: el inventario (base de datos) se notifica automáticamente
cada vez que la cámara detecta un objeto.
Multithreading
Decoradores
Concurrencia
Observer
07
Objetivo 7 · Módulo II
Integración y Calidad de Software
Unit testing con PyTest y mocks (imágenes falsas) para validar la lógica
de conteo. Persistencia con SQLite/PostgreSQL usando POO.
Patrón Factory: fábrica de procesadores para instanciar diferentes
pipelines de visión según el tipo de producto en el inventario.
PyTest
Mocks
SQLite
Factory