Skip to content

Latest commit

 

History

22 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🚀 LearningCpp

Entiende primero. Abstrae después.

De Cero Absoluto a C++ Moderno — Fundamentos de Grado Profesional (C++17 Base · Evolución C++20)

Autor C++17 Base CI Matrix Licencia MIT


🌐 Portal Web · 📜 Syllabus Oficial · 📥 Descargar PDF · 💬 Discord Code Lab · 🏛️ Arquitectura · 📋 Backlog



LearningCpp — C++ Moderno Visual e Interactivo

💡 ¿Por qué existe LearningCpp?

La mayoría de cursos tradicionales de C++ cometen dos errores formativos: enseñan C++ arcaico de hace 25 años (punteros crudos obligatorios para todo, printf, arreglos estilo C y using namespace std;) o asumen experiencia previa avanzada en hardware y compiladores.

LearningCpp rompe ambos paradigmas:

  • 🛡️ C++ Moderno desde el Día 1: Sintaxis segura con std::string, {} inicialización uniforme, std::vector, constexpr, std::unique_ptr (RAII) y algoritmos estándar de la STL.
  • 🪜 Nivel Cero Absoluto: Diseñado para estudiantes sin conocimientos previos de memoria RAM ni compilación.

🏛️ Los 4 Pilares Pedagógicos

Pilar Principio Técnico Beneficio Formativo
🎯 1. Principio de la Escalera Progresión estrictamente incremental Cada lección se construye únicamente sobre lo enseñado antes. Cero cajas negras.
🐞 2. Metodología Break-First Diagnóstico intencional de fallos Experimenta el fallo real (Buffer Overflow, Undefined Behavior, Slicing) antes de aprender la solución.
🧠 3. Modelos Mentales de RAM Arquitectura y hardware real Visualiza exactamente qué ocurre en la memoria física (Stack vs Heap, direcciones 0x..., VTable y RAII).
🌉 4. Scaffolding & Fading De la intuición a la industria Analogías físicas iniciales que se desvanecen de inmediato hacia la terminología profesional de ingeniería.

🧭 El Circuito de Aprendizaje (5 Pasos por Lección)

📖 1. Teoría & Hardware  ➔  🧪 2. Laboratorio Guiado  ➔  🐞 3. Demo de Bug  ➔  🏋️ 4. Reto Práctico  ➔  📝 5. Cheatsheet
  1. Teoría (theory/LXX_*.md): Explicación exhaustiva con animaciones visuales Manim y modelos de memoria física.
  2. Laboratorio Guiado (lab/LXX_*.cpp): Código de exploración comentado paso a paso para compilar a mano en consola.
  3. Demo de Bug (lab/demos/DXX_*.cpp): Trampas reales del lenguaje aisladas para experimentar fallos en vivo.
  4. Reto Práctico (exercise/EXX_*/): Reto con historia (lore), código con TODOs y su carpeta solution/.
  5. Hoja de Repaso (summary/ModuleXX_Cheatsheet.md): Resumen de consulta técnica ultra-resumido.

🌐 Plataforma Web Interactiva

Accede a la plataforma web interactiva del curso online o de manera offline:

  • 🚀 Sitio Web Oficial en Vivo: 👉 minilux0.github.io/LearningCpp
  • 📖 Explorador Interactivo del Temario: Navega entre las 6 fases y 117 lecciones con búsqueda instantánea (Ctrl+K).
  • 🎬 Galería de Animaciones Manim: Visualiza los modelos de memoria RAM física (Stack vs Heap, VTable, RAII).
  • 💻 Showcase de C++17 Idiomático: Ejemplos directos de inicialización uniforme, std::vector y std::unique_ptr.
  • 💡 Uso Offline: Haz doble clic en web/index.html desde tu explorador de archivos.

🗺️ Mapa de Ruta del Curso (15 Módulos / 6 Fases)

Fase # Módulo Lecc. Eje Conceptual Clave Proyecto Integrador Estado
Fase 1: Fundamentos 01 Getting Started 7 Compilación g++, cout/cin, streams, namespaces Terminal Interactiva
02 Fundamental Types 7 Tipado estático, {} inicialización, casting explícito Split the Bill Calculator
03 Scope & Control Flow 8 Ámbitos en Stack, if/switch, bucles, prevención UB Cajero / Taberna RPG
Fase 2: Funciones & Textos 04 Functions 8 Paso por valor, aislamiento, RNG moderno <random> Generador Atributos RPG
05 Constants & Strings 6 Inmutabilidad constexpr, std::string, string_view Generador de Claves
Fase 3: Colecciones 06 Arrays & Vectors 9 std::vector, límites seguros .at(), multi-archivo Registro Calificaciones 🔄
07 Compound Types 7 struct, enum class, Agregados C++17 (Mirada C++20) Bestiario RPG V1 🔄
Fase 4: Memoria Real 08 References & Addresses 8 Direcciones &, paso por referencia const &, alias Bestiario V2 (Zero-Copy) 🔄
09 Dynamic Memory 9 Heap, punteros observadores, unique_ptr, move, RAII Bestiario V3 (Heap RAII) 🔄
Fase 5: POO Moderna 10 Classes & Encapsulation 10 Encapsulamiento m_, constructores, operadores <</== Bestiario V4 (Modular) 🔄
11 Inheritance 7 Herencia : public, constructores derivados, slicing Jerarquía del Bestiario 🔄
12 Polymorphism 8 virtual, VTable, override, interfaces puras El Coliseo (Game Loop) 🔄
Fase 6: Resiliencia & Especialización 13 Error Handling 7 Stack Unwinding, excepciones de dominio, std::optional Motor Mazmorras Resiliente 🔄
14 Templates & Lambdas 8 Polimorfismo estático, templates .hpp, if constexpr Pipeline Genérico Eventos 🔄
15 STL Algorithms & Pipelines 8 Algoritmos STL, Erase-Remove, iteradores, Capstone Final El Motor RPG Definitivo 🔄

Leyenda:Módulo completo e implementado · 🔄 Módulo en desarrollo activo.


⚡ Guía Rápida: Cómo Empezar

1. Clona el Repositorio

git clone https://github.com/MiniLux0/LearningCpp.git
cd LearningCpp

2. Verifica tu Compilador C++

Asegúrate de contar con un compilador moderno (GCC 13+, Clang 16+ o MSVC 2022):

g++ --version

3. Entra al Primer Módulo y Compila

# Entra al laboratorio del Módulo 01
cd 01_GettingStarted/lab

# Compila con el estándar moderno
g++ -std=c++17 L02_TuPrimerPrograma.cpp -o app

# Ejecuta tu binario
./app        # En Linux/macOS
.\app.exe    # En Windows

🗂️ Arquitectura de Carpetas del Repositorio

Cada módulo sigue estrictamente una estructura predecible y uniforme:

XX_NombreDelModulo/
├── README.md                  ← Índice general del módulo y objetivos
├── theory/                    ← Lecciones teóricas en Markdown
│   ├── LXX_Nombre.md
│   └── assets/                ← Animaciones visuales Manim optimizadas (GIFs)
├── lab/                       ← Laboratorios guiados en código C++
│   ├── LXX_Nombre.cpp
│   └── demos/                 ← Demos de bugs intencionales aislados
│       └── DXX_NombreBug.cpp
├── exercise/                  ← Retos prácticos con lore y desafíos
│   ├── README.md              ← Índice de retos del módulo
│   └── EXX_NombreDelReto/
│       ├── README.md          ← Misión, historia y objetivos del reto
│       ├── EXX_Nombre.cpp     ← Reto con TODOs a resolver
│       └── solution/          ← Solución oficial verificada
│           └── EXX_Nombre.cpp
└── summary/
    └── ModuleXX_Cheatsheet.md ← Hoja de repaso técnico para consulta rápida

💬 Comunidad & Contribución

  • 👥 Comunidad en Discord: Resuelve dudas, comparte tu progreso y debate sobre C++ Moderno en Discord Code Lab.
  • 🤝 Contribuciones: Si encuentras una errata o deseas proponer un nuevo ejercicio, consulta docs/ARCHITECTURE.md y abre un Pull Request.

Maintained with ❤️ by Jesus Vera V. (MiniLux0) · 2026
Un curso interactivo de C++ Moderno desde Cero Absoluto hasta Fundamentos de Grado Profesional.

About

Curso interactivo y visual de C++ Moderno (C++17/20) desde cero absoluto. Modelos de memoria, animaciones Manim y metodología Break-First, Fix-Later. Entiende primero. Abstrae después.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Contributors

Languages