Skip to content

Arkanabytes/Generation

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

☕ Generation Java Bootcamp

Java Banner

Java Generation Progress Days Commits

🎯 Sobre el Bootcamp Generation

Generation es un programa intensivo de desarrollo de software que transforma vidas a través de la tecnología. Este repositorio documenta mi progreso diario en el aprendizaje de Java y desarrollo Full Stack.

graph TB
    A[🚀 Generation Bootcamp] --> B[☕ Java Fundamentals]
    A --> C[🌐 Web Development]
    A --> D[🗄️ Database Management]
    A --> E[🏗️ Software Architecture]
    
    B --> B1[Sintaxis y Variables]
    B --> B2[POO y Herencia]
    B --> B3[Collections y Streams]
    B --> B4[Exception Handling]
    
    C --> C1[HTML/CSS/JS]
    C --> C2[Spring Boot]
    C --> C3[REST APIs]
    C --> C4[Frontend Frameworks]
    
    D --> D1[SQL y MySQL]
    D --> D2[JPA/Hibernate]
    D --> D3[Database Design]
    
    E --> E1[Design Patterns]
    E --> E2[Testing]
    E --> E3[Deployment]
    
    style A fill:#FF6B35,stroke:#E55A2B,stroke-width:3px,color:#fff
    style B fill:#ED8B00,stroke:#D17500,stroke-width:2px,color:#fff
    style C fill:#4CAF50,stroke:#45A049,stroke-width:2px,color:#fff
    style D fill:#2196F3,stroke:#1976D2,stroke-width:2px,color:#fff
    style E fill:#9C27B0,stroke:#7B1FA2,stroke-width:2px,color:#fff
Loading

📊 Mi Progreso en el Bootcamp

journey
    title Ruta de Aprendizaje Java - Generation
    section Semana 1-2
      Variables y Tipos         : 5: Estudiante
      Operadores               : 5: Estudiante
      Estructuras de Control   : 5: Estudiante
    section Semana 3-4
      Métodos y Funciones      : 4: Estudiante
      Arrays y Collections     : 4: Estudiante
      POO Básico              : 4: Estudiante
    section Semana 5-6
      Herencia y Polimorfismo  : 3: Estudiante
      Exception Handling       : 3: Estudiante
      I/O y Files             : 2: Estudiante
    section Semana 7-8
      Spring Boot             : 2: Estudiante
      APIs REST               : 2: Estudiante
      Database Integration    : 1: Estudiante
Loading

🏆 Objetivos del Bootcamp

🎓 Técnicos

  • ✅ Dominar Java fundamentals
  • ✅ Implementar POO correctamente
  • 🔄 Desarrollar APIs REST
  • 🔄 Manejar bases de datos
  • ⏳ Deploy de aplicaciones
  • ⏳ Testing automatizado

💼 Profesionales

  • ✅ Trabajo en equipo
  • ✅ Metodologías ágiles
  • 🔄 Code review
  • 🔄 Documentación técnica
  • ⏳ Soft skills
  • ⏳ Portfolio completo

📚 Estructura del Repositorio

graph TD
    A[📁 Generation] --> B[01-Fundamentos]
    A --> C[02-Métodos]
    A --> D[03-POO]
    A --> E[04-Excepciones]
    A --> F[05-Colecciones]
    A --> G[06-Spring Boot]
    A --> H[07-Proyectos]
    A --> I[📖 Docs]
    
    B --> B1[Variables y Tipos]
    B --> B2[Operadores]
    B --> B3[Condicionales]
    B --> B4[Bucles]
    
    C --> C1[Métodos Void]
    C --> C2[Métodos Return]
    C --> C3[Parámetros]
    C --> C4[Sobrecarga]
    
    D --> D1[Clases y Objetos]
    D --> D2[Encapsulación]
    D --> D3[Herencia]
    D --> D4[Polimorfismo]
    
    H --> H1[🏪 Sistema POS]
    H --> H2[📚 Biblioteca API]
    H --> H3[🌐 Web App]
    
    style A fill:#FF6B35,stroke:#E55A2B,stroke-width:3px,color:#fff
    style H1 fill:#e74c3c,color:#fff
    style H2 fill:#3498db,color:#fff
    style H3 fill:#27ae60,color:#fff
Loading

🗂️ Contenido Detallado

📂 01-Fundamentos ✅

Tema Archivos Estado Dificultad
Variables Variables.java
Operadores 4 archivos ⭐⭐
Condicionales 7 archivos ⭐⭐
Bucles 5 archivos ⭐⭐
Switch 4 archivos ⭐⭐

📂 02-Métodos 🔄

classDiagram
    class MetodosBasicos {
        +void saludar()
        +int sumar(int a, int b)
        +String concatenar(String s1, String s2)
        +boolean esPar(int numero)
    }
    
    class MetodosAvanzados {
        +void imprimirArray(int[] array)
        +int encontrarMaximo(int[] numeros)
        +String invertirCadena(String texto)
        +double calcularPromedio(double[] valores)
    }
    
    class SobrecargaMetodos {
        +int calcular(int a, int b)
        +double calcular(double a, double b)
        +String calcular(String a, String b)
    }
    
    MetodosBasicos --|> MetodosAvanzados : hereda
    MetodosAvanzados --|> SobrecargaMetodos : implementa
    
    style MetodosBasicos fill:#3498db,color:#fff
    style MetodosAvanzados fill:#2ecc71,color:#fff
    style SobrecargaMetodos fill:#e74c3c,color:#fff
Loading

📂 03-POO 🔄

// 🏗️ Ejemplo de clase básica
public class Persona {
    // 🔒 Atributos privados (Encapsulación)
    private String nombre;
    private int edad;
    private String email;
    
    // 🏗️ Constructor
    public Persona(String nombre, int edad, String email) {
        this.nombre = nombre;
        this.edad = edad;
        this.email = email;
    }
    
    // 📖 Getters y Setters
    public String getNombre() { return nombre; }
    public void setNombre(String nombre) { this.nombre = nombre; }
    
    // 🎭 Métodos
    public void presentarse() {
        System.out.println("Hola, soy " + nombre + " y tengo " + edad + " años");
    }
    
    // 🔄 Override toString
    @Override
    public String toString() {
        return "Persona{nombre='" + nombre + "', edad=" + edad + "}";
    }
}

📂 04-Excepciones ⏳

graph TD
    A[Exception Hierarchy] --> B[Checked Exceptions]
    A --> C[Unchecked Exceptions]
    
    B --> B1[IOException]
    B --> B2[SQLException]
    B --> B3[ClassNotFoundException]
    
    C --> C1[RuntimeException]
    C1 --> C2[NullPointerException]
    C1 --> C3[IndexOutOfBoundsException]
    C1 --> C4[IllegalArgumentException]
    
    D[Try-Catch-Finally] --> E[Try with Resources]
    D --> F[Throw vs Throws]
    D --> G[Custom Exceptions]
    
    style A fill:#e74c3c,color:#fff
    style B fill:#f39c12,color:#fff
    style C fill:#e67e22,color:#fff
    style D fill:#27ae60,color:#fff
Loading

🚀 Quick Start

📋 Prerequisitos

Herramienta Versión Link Estado
Java 17+ Descargar
IDE 2024+ Descargar
Git Latest Descargar
Maven 3.8+ Descargar

⚡ Configuración Rápida

# 1️⃣ Clonar el repositorio
git clone https://github.com/Arkanabytes/Generation.git

# 2️⃣ Navegar al directorio
cd Generation

# 3️⃣ Verificar instalación Java
java -version
javac -version

# 4️⃣ Compilar un ejemplo
javac 01-fundamentos/operadores/Operadores.java

# 5️⃣ Ejecutar el programa
cd 01-fundamentos/operadores
java Operadores

# 6️⃣ ¡Listo para explorar! 🎉

📊 Estadísticas del Progreso

Coding Stats

Streak

📈 Métricas de Aprendizaje

pie title Distribución de Tiempo de Estudio
    "Java Fundamentals" : 40
    "POO y Herencia" : 25
    "Spring Boot" : 20
    "Database & SQL" : 10
    "Testing" : 5
Loading

🏅 Logros Desbloqueados

Logro Descripción Fecha XP
🏆 Java Newbie Primer "Hello World" Semana 1 +100
🔥 Loop Master 50 ejercicios de bucles Semana 2 +250
🎯 OOP Warrior Primera clase creada Semana 3 +300
📚 Collection Expert Dominando ArrayList Semana 4 +400
🛠️ Method Maestro 100 métodos creados Semana 5 +500
🌟 Exception Handler Try-catch sin errores Semana 6 +600

🎮 Proyectos del Bootcamp

🏪 Proyecto 1: Sistema POS (Point of Sale)

erDiagram
    PRODUCTO {
        int id PK
        string nombre
        double precio
        int stock
        string categoria
    }
    
    VENTA {
        int id PK
        date fecha
        double total
        int empleado_id FK
    }
    
    DETALLE_VENTA {
        int id PK
        int venta_id FK
        int producto_id FK
        int cantidad
        double subtotal
    }
    
    EMPLEADO {
        int id PK
        string nombre
        string email
        string rol
    }
    
    PRODUCTO ||--o{ DETALLE_VENTA : incluye
    VENTA ||--o{ DETALLE_VENTA : contiene
    EMPLEADO ||--o{ VENTA : realiza
Loading

Características:

  • ✅ Gestión de productos e inventario
  • ✅ Procesamiento de ventas
  • ✅ Reportes de ventas diarias
  • 🔄 Interfaz gráfica con Swing
  • ⏳ Conexión a base de datos

📚 Proyecto 2: API REST - Sistema Biblioteca

@RestController
@RequestMapping("/api/libros")
public class LibroController {
    
    @Autowired
    private LibroService libroService;
    
    @GetMapping
    public ResponseEntity<List<Libro>> obtenerTodos() {
        return ResponseEntity.ok(libroService.obtenerTodos());
    }
    
    @PostMapping
    public ResponseEntity<Libro> crear(@RequestBody Libro libro) {
        Libro nuevoLibro = libroService.guardar(libro);
        return ResponseEntity.status(HttpStatus.CREATED).body(nuevoLibro);
    }
    
    @PutMapping("/{id}")
    public ResponseEntity<Libro> actualizar(
        @PathVariable Long id, 
        @RequestBody Libro libro
    ) {
        return ResponseEntity.ok(libroService.actualizar(id, libro));
    }
}

🌐 Proyecto 3: Aplicación Web Full Stack

graph TD
    A[Frontend - React] --> B[Backend - Spring Boot]
    B --> C[Base de Datos - MySQL]
    
    A --> A1[Components]
    A --> A2[State Management]
    A --> A3[HTTP Client]
    
    B --> B1[Controllers]
    B --> B2[Services]
    B --> B3[Repositories]
    B --> B4[Security]
    
    C --> C1[JPA Entities]
    C --> C2[Relationships]
    C --> C3[Migrations]
    
    style A fill:#61DAFB,color:#000
    style B fill:#6DB33F,color:#fff
    style C fill:#4479A1,color:#fff
Loading

🧪 Testing y Calidad de Código

Tests Coverage Quality

🔧 Ejemplo de Test Unitario

@Test
@DisplayName("Debería calcular el área de un rectángulo correctamente")
void deberiaCalcularAreaRectangulo() {
    // Given - Arrange
    Rectangulo rectangulo = new Rectangulo(5.0, 3.0);
    double esperado = 15.0;
    
    // When - Act
    double resultado = rectangulo.calcularArea();
    
    // Then - Assert
    assertEquals(esperado, resultado, 0.001);
    assertTrue(resultado > 0);
    assertNotNull(rectangulo);
}

@ParameterizedTest
@ValueSource(ints = {2, 4, 6, 8, 10})
@DisplayName("Debería identificar números pares correctamente")
void deberiaIdentificarNumerosPares(int numero) {
    assertTrue(NumeroUtils.esPar(numero));
}

📅 Cronograma del Bootcamp

gantt
    title Generation Java Bootcamp - Cronograma
    dateFormat  YYYY-MM-DD
    section Fundamentos Java
    Variables y Tipos        :done,    week1, 2024-01-01,2024-01-05
    Operadores y Expresiones :done,    week1b, 2024-01-06,2024-01-07
    Control de Flujo         :done,    week2, 2024-01-08,2024-01-14
    
    section POO
    Clases y Objetos         :done,    week3, 2024-01-15,2024-01-21
    Herencia y Polimorfismo  :active,  week4, 2024-01-22,2024-01-28
    Collections              :         week5, 2024-01-29,2024-02-04
    
    section Backend
    Spring Boot Basics       :         week6, 2024-02-05,2024-02-11
    REST APIs                :         week7, 2024-02-12,2024-02-18
    Database Integration     :         week8, 2024-02-19,2024-02-25
    
    section Proyecto Final
    Planificación           :         week9, 2024-02-26,2024-03-04
    Desarrollo              :         week10, 2024-03-05,2024-03-18
    Testing y Deploy        :         week11, 2024-03-19,2024-03-25
Loading

🌟 Filosofía Generation

mindmap
  root((Generation<br/>Mindset))
    🎯 Mentalidad de Crecimiento
      Aprender de los errores
      Mejora continua
      Adaptabilidad
    🤝 Trabajo en Equipo
      Colaboración
      Comunicación efectiva
      Code Reviews
    💪 Persistencia
      Práctica diaria
      Superar obstáculos
      Never give up
    🌍 Impacto Social
      Diversidad en tech
      Oportunidades para todos
      Transformar vidas
Loading

💡 Valores del Programa

🎯 Mentalidad de Crecimiento

"Los desafíos son oportunidades de aprender"

🤝 Colaboración

"Juntos llegamos más lejos"

💪 Persistencia

"El éxito requiere constancia"

🌟 Excelencia

"Siempre dando lo mejor"

🛠️ Herramientas y Tecnologías

💻 Stack de Desarrollo

graph LR
    A[Development Stack] --> B[Frontend]
    A --> C[Backend]
    A --> D[Database]
    A --> E[Tools]
    
    B --> B1[HTML/CSS/JS]
    B --> B2[React]
    B --> B3[Bootstrap]
    
    C --> C1[Java 17]
    C --> C2[Spring Boot]
    C --> C3[Spring Security]
    C --> C4[Maven]
    
    D --> D1[MySQL]
    D --> D2[H2 Database]
    D --> D3[JPA/Hibernate]
    
    E --> E1[IntelliJ IDEA]
    E --> E2[Git/GitHub]
    E --> E3[Postman]
    E --> E4[Docker]
    
    style A fill:#2c3e50,color:#fff
    style C1 fill:#ED8B00,color:#fff
    style C2 fill:#6DB33F,color:#fff
Loading

📚 Recursos de Aprendizaje

Categoría Recurso Tipo Rating
📖 Oracle Java Docs Documentación ⭐⭐⭐⭐⭐
🎥 Java Brains YouTube Videos ⭐⭐⭐⭐⭐
📚 Effective Java Libro ⭐⭐⭐⭐⭐
💻 LeetCode Java Práctica ⭐⭐⭐⭐
🏆 HackerRank Java Challenges ⭐⭐⭐⭐

🏆 Certificaciones y Logros

Oracle Generation Spring

🎯 Metas de Certificación

  • 🥇 Oracle Certified Associate (OCA) Java SE 11
  • 🥈 Oracle Certified Professional (OCP) Java SE 11
  • 🥉 Spring Professional Certification
  • 🏅 AWS Certified Developer Associate

🤝 Comunidad Generation

graph TD
    A[Generation Community] --> B[Estudiantes]
    A --> C[Instructores]
    A --> D[Mentores]
    A --> E[Alumni]
    A --> F[Empresas Partner]
    
    B --> B1[Peer Learning]
    B --> B2[Study Groups]
    B --> B3[Code Reviews]
    
    C --> C1[Clases Técnicas]
    C --> C2[Workshops]
    C --> C3[Feedback]
    
    D --> D1[Career Guidance]
    D --> D2[Industry Insights]
    D --> D3[Mock Interviews]
    
    E --> E1[Job Referrals]
    E --> E2[Success Stories]
    E --> E3[Networking]
    
    F --> F1[Job Opportunities]
    F --> F2[Real Projects]
    F --> F3[Hiring Events]
    
    style A fill:#FF6B35,color:#fff
    style B fill:#3498db,color:#fff
    style C fill:#2ecc71,color:#fff
    style D fill:#e74c3c,color:#fff
Loading

📈 Progreso Personal

🎯 Objetivos SMART

📅 Corto Plazo (1-3 meses)

  • ✅ Completar módulo de Java fundamentals
  • ✅ Crear primera aplicación POO
  • 🔄 Desarrollar API REST funcional
  • ⏳ Dominar Spring Boot básico
  • ⏳ Completar proyecto de biblioteca

🚀 Largo Plazo (6-12 meses)

  • ⏳ Obtener certificación Oracle Java
  • ⏳ Conseguir trabajo como Java Developer
  • ⏳ Contribuir a proyectos open source
  • ⏳ Crear portfolio completo
  • ⏳ Mentorear a nuevos estudiantes

📊 Tracking Semanal

xychart-beta
    title "Horas de Código por Semana"
    x-axis [Sem1, Sem2, Sem3, Sem4, Sem5, Sem6, Sem7, Sem8]
    y-axis "Horas" 0 --> 50
    line [25, 30, 35, 40, 38, 42, 45, 47]
Loading

🎓 Testimonial

"Generation ha transformado completamente mi perspectiva sobre la programación. No solo aprendí Java, sino que desarrollé una mentalidad de crecimiento que me permite enfrentar cualquier desafío técnico con confianza."

- Mi experiencia en Generation ⭐⭐⭐⭐⭐

📞 Contacto y Networking

Consuelo Alejandra Pinto Toro
Java Full Stack Developer in Training

GitHub LinkedIn Email Generation

🌟 Agradecimientos

mindmap
  root((🙏 Gracias))
    🎓 Generation Chile
      Instructores
      Staff
      Programa de Becas
    👥 Compañeros de Clase
      Peer Learning
      Code Reviews
      Support System
    👨‍💼 Mentores
      Career Guidance
      Industry Insights
      Mock Interviews
    🏢 Empresas Partner
      Job Opportunities
      Real Projects
      Hiring Events
    👨‍👩‍👧‍👦 Familia y Amigos
      Support
      Motivation
      Understanding
Loading

Footer

💪 "Every expert was once a beginner. Every pro was once an amateur."

[![Generation](https://img.shields.io/badge/💜_Generation-Changing_Lives_Through

Bootcamp Impartido por el Profesor:

Bootcamp Impartido por las coinstructoras:

Authors

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published