Presentaciones Interactivas
Visualizaciones interactivas paso a paso de algoritmos, estructuras de datos y conceptos.
Variables y Constantes
Constante: valor fijo. Variable: valor que cambia durante la ejecución.
Paso por valor y paso por referencia
Descubre cómo C maneja memoria y punteros.
Tipos de Datos
Los tipos fundamentales de C: enteros, flotantes, chars, punteros y structs.
Modularidad
Subprogramas, Funciones y Procedimientos
Funciones y procedimientos en Java
Cómo Java define y usa funciones y procedimientos.
Arreglos en C
Arreglos unidimensionales y matrices con visualizaciones y paso a paso.
Operaciones con Arreglos
Recorrido, búsqueda e inserción en arreglos con simulaciones paso a paso.
While paso a paso
Simula iteración por iteración un while.
Do-while paso a paso
Visualiza la lógica del do-while paso por paso.
For paso a paso
Inicialización, condición, bloque e incremento de un ciclo for.
For anidado y tabla de multiplicar
Dos for anidados que completan una tabla de multiplicar.
If paso a paso
Flujo de un if línea por línea.
If-else paso a paso
Cómo el programa elige entre if y else.
Switch paso a paso
Comparación de cases, match y break.
String paso a paso
Cambios al usar strlen, buffers y recortes manuales en C.
String de números paso a paso
Concatenación textual vs suma real con sprintf y atoi.
strchr paso a paso
Cómo strchr recorre un string y devuelve un puntero.
Contar palabras en cadenas
Recorre una cadena carácter por carácter y cuenta palabras al entrar en texto.
Bubble Sort paso a paso
Visualiza cómo los elementos burbujean hasta su posición correcta.
Selection Sort paso a paso
Encuentra el mínimo y colócalo en su lugar.
Insertion Sort paso a paso
Inserta cada elemento en su posición correcta dentro de la parte ordenada.
Árboles Binarios paso a paso
Visualiza la inserción recursiva y el recorrido inorden en un BST.
Los 4 pilares de la POO en Java
Abstracción, encapsulamiento, herencia y polimorfismo con diagramas y demos interactivas.
Conceptos Básicos, JVM y Tu Primer Programa
El pipeline de compilación a bytecode, arquitectura interna de la JVM y anatomía de main().
Variables, Tipos de Datos y Operadores en Java
Los 8 tipos primitivos en memoria, casting implícito/explícito y cortocircuito lógico con simulador.
Control de Flujo: Condicionales y Bucles en Java
Diagramas de flujo animados de if/else, switch moderno, y la anatomía interna de for, while y do-while.
Arrays y Strings: Memoria y el Pool de Cadenas
Memoria contigua, String Constant Pool en el Heap, la trampa de == vs equals y StringBuilder.
Clases, Objetos y el Ciclo del Operador new
El plano frente a la edificación, ciclo en 4 tiempos de new, puntero this y aliasing en memoria.
Constructores, Encapsulamiento y Fuga de Referencia
Delegación this(), matriz de los 4 modificadores de acceso, copia defensiva e inmutabilidad.
Arrays de Objetos: Doble Nivel de Memoria
El error de las casillas null, creación en dos pasos, capacidad vs cantidad y aliasing con diagramas de Heap.
Herencia, Despacho Dinámico y Polimorfismo
Prueba "es-un", encadenamiento de constructores con super(), sobrecarga vs sobrescritura y la tabla virtual de métodos (vtable).
Clases Abstractas e Interfaces en Java
Contratos, jerarquías, métodos default y relaciones UML con diagramas interactivos.
Manejo de Excepciones y Robustez en Java
Propagación en la pila de llamadas, try-with-resources y jerarquía Throwable con simulaciones paso a paso.
TAD Listas: Estáticas vs Dinámicas y Nodos Enlazados
Contrato abstracto, memoria contigua vs dispersa, inserción/eliminación y análisis de complejidad Big-O.
TAD Pila (LIFO) y TAD Cola (FIFO) en Java
Estructuras lineales, cola circular con aritmética modular y balanceo de expresiones con simuladores.
Java Collections Framework y Genéricos
Jerarquía completa, familias List/Set/Map/Queue y anatomía interna de HashMap con simulador de buckets.
Iteradores, Ordenamiento y Contrato equals/hashCode
ConcurrentModificationException desmitificada, Comparator vs Comparable y colisiones en HashSet.
TAD Árboles Binarios y Búsqueda (ABB) en Java
Recorridos DFS/BFS, propiedad ABB, inserción y eliminación con simulador de árbol interactivo.
Grafos: Matriz, Lista, BFS, DFS y Dijkstra
Representación en memoria, recorridos BFS/DFS, Dijkstra y Floyd-Warshall con simulador de grafos interactivo.
Archivos, Serialización y Empaquetado JAR en Java
Patrón Decorador en I/O, NIO.2, serialVersionUID y empaquetado nativo con jpackage.
Hilos, Sincronización y Virtual Threads en Java
Stack vs Heap en el JMM, condiciones de carrera en count++, cerrojos synchronized, pools de hilos y Project Loom.
JDBC, Inyección SQL y Manejo de Transacciones
Arquitectura de drivers, Statement vs PreparedStatement, cursor de ResultSet, commit/rollback y pools HikariCP.
Testing con JUnit 5, Mockito y Arquitectura Spring Boot
Pirámide de tests, patrón AAA, aislamiento con dobles de prueba (Mockito) y la arquitectura en 3 capas de Spring Boot.
Algoritmia: Especificación, Invariantes y Big-O
Tripletas de Hoare, invariantes de bucle paso a paso y curvas de complejidad asintótica.
Árboles N-arios y Representación con Vectores
Transformación Primer Hijo - Siguiente Hermano (LCRS) y vector de padres con animador interactivo.
Depuración, Código Limpio y Refactorización
El bucle científico de depuración, breakpoints y watches en el IDE, catálogo de code smells y refactor seguro con JUnit.
Paquetes, Namespaces e Importación de Clases en Java
Colisiones de nombres, la declaración package y su carpeta, FQCN, import como alias, resolución de ambigüedades y visibilidad package-private.
Fundamentos de Git y el Ciclo de Tres Estados
De archivos sin seguimiento al commit: Working Directory, Staging Area, Repositorio local, puntero HEAD y la anatomía de un snapshot.
Sincronización Remota: Fetch, Pull y Push en Git
Arquitectura distribuida, alias origin, ramas de seguimiento remoto origin/main, upstream tracking (-u) y la diferencia entre fetch y pull.
Ramas, Fast-Forward, 3-Way Merge y Conflictos en Git
Aislamiento de features, integración con git merge, resolución paso a paso de marcadores de conflicto y abortos seguros.
Git Rebase, Historial Lineal y Buenas Prácticas
Replay de commits sobre una nueva base, la Regla de Oro del Rebase, resolución commit por commit, commits atómicos y Conventional Commits.