Paradigmas de programación


2026 semestre 1

Cronograma de actividades

  • (5%) Quiz #1 [Semana 3 Feb 5 | 6]
  • (15%) Evaluación #1 [Semana 5 Feb 19 | 20]
  • (20%) Taller #1 [Semana 9 Marzo 17 | 18]
  • (15%) Taller #2 [Semana 12 Abril 8 | 9]
  • (20%) Evaluación #2 [Semana 14 Abril 23 | 24]
  • (25%) Proyecto Final [Semana 17 Mayo 12 | 13]

Taller 1

En parejas o equipos de tres personas

Deben escoger un tema de su preferencia y realizar:
1. Enunciado del sistema: Descripción clara del problema a resolver
2. Diagrama de clases UML completo: Con todos los atributos, métodos, relaciones, multiplicidad, etc.
3. Implementación en C#: Aplicación de consola que materializa el diseño, con persistencia de datos usando CsvHelper.

Requisitos de POO

El sistema debe incluir por lo menos:

  • Una (1) relación de Herencia
  • Una (1) relación de Asociación
  • Una (1) relación de Agregación
  • Una (1) relación de Composición
  • Una (1) Interfaz implementada

Requisitos de Funcionalidad

El sistema debe implementar mínimo 3 CRUDs:

  • Create: Crear registros en las entidades principales
  • Read: Consultar y listar registros
  • Update: Actualizar registros existentes
  • Delete: Eliminar registros

Ejemplo: Para un sistema de biblioteca → CRUD de libros, usuarios y préstamos

Entregables

  • Repositorio de GitHub público que contenga:
    • Enunciado del sistema (README.md)
    • Diagrama de clases UML en archivo Draw.io
    • Proyecto de C#
    • Commits que refleje el trabajo de cada integrante
  • Demostración en clase de los 3 CRUDs funcionales

Criterios de evaluación

  • (15%) Enunciado y descripción del sistema
  • (20%) Diagrama de clases (Relaciones, Cohesión, Acoplamiento...)
  • (20%) Implementación de los 3 CRUDs
  • (10%) Persistencia de datos
  • (25%) Presentación y demostración en clase
  • (10%) Repositorio de GitHub (estructura y documentación)

Recomendaciones

  • Escojan un tema que les apasione (videojuegos, tienda, hospital, universidad, etc.)
  • Documenten claramente cuál es cuál relación POO implementada
  • Usen buenas prácticas: nombres significativos, métodos cohesivos, bajo acoplamiento
  • Prueben los CRUDs antes de la presentación

Taller 2


Implementar por completo en Godot con C# el funcionamiento de los personajes del juego (movimientos y ataques), aplicando herencia.

Taller 2

Requerimientos mínimos:

  1. Implementar la clase base Character que derive de CharacterBody2D.
  2. Implementar la clase Heroe y Enemy que derivan de Character.
  3. Implementar por lo menos un Héroe y 2 tipos de Enemigo diferentes.

Taller 2

Requerimientos mínimos:

  1. Implementar por completo la lógica (atributos y métodos) para movimientos y ataques de los personajes.
  2. Implementar un nivel o escenario completo donde el héroe y los enemigos combaten.

Taller 2

Plus:

  • Implementar una barra visual para la salud de los enemigos que se actualice al recibir daño.

Taller 2

Entregables:

  1. Proyecto de Godot en C#.
  2. Diagrama de clases final completo (Draw.io).

Tips

  • Recuerden apoyarse del videotutorial que les compartí por el equipo de Microsoft Teams.
  • Asegúrense de comprender cómo funciona la herencia en C# para esta jerarquía.

Criterios de evaluación

  • (20%) Sustentación / Argumentación individual
  • (10%) Diagrama de clases final completo (Draw.io)
  • (20%) Implementación de clase base Character y sus mecánicas
  • (25%) Especialización de clases (1 Héroe y 2 Enemigos distintos operando)
  • (25%) Nivel interactivo completo donde todo el ecosistema interactúa / combate