Programacion Orientada a Objetos

2° año · 2° cuatrimestre · Plan 2023

Logo de FaCENA

Follow @tobiager

🎓 Programación Orientada a Objetos - UNNE 2024

Esta carpeta reúne todos los ejercicios, materiales de estudio, teoría y proyectos desarrollados durante la materia Programación Orientada a Objetos (POO) de la UNNE - Facultad de Ciencias Exactas y Naturales y Agrimensura (FaCENA).

El punto culminante del curso fue el Proyecto Integrador, donde apliqué todos los conocimientos adquiridos para desarrollar una solución de software completa en Java, utilizando técnicas avanzadas de POO.


📦 Estructura del Repositorio

Archivo/CarpetaContenido
Cuadernillo Java/Guía principal con teoría y ejercicios de Java
material del 2023/Recursos y apuntes de una cursada anterior
practica/Trabajos prácticos y ejercicios resueltos
apunte-teoria.pdfApunte de toda la teoria de la materia (2024)
ProgramaPOO_Res0395_23.pdfPrograma oficial de la materia
Final POO.docxEnunciado del proyecto del examen final

🚀 Temas principales y conceptos aplicados

✅ Fundamentos de Java

  • Sintaxis, estructuras de control, tipos de datos y modularización del código.
  • Manejo de archivos y gestión de excepciones.

✅ Programación Orientada a Objetos (POO)

  • Clases y Objetos → Modelado de entidades reales.
  • Encapsulamiento → Control de acceso a datos.
  • Abstracción → Simplificación de sistemas complejos.
  • Herencia y Polimorfismo → Reutilización de código y comportamiento flexible.

[!TIP] Dominar encapsulamiento y herencia es fundamental para escribir software limpio y escalable.

✅ Colecciones y uso avanzado

  • Colecciones estáticas (arreglos) y dinámicas (ArrayList, HashSet, HashMap).
  • Comparación entre colecciones homogéneas y heterogéneas.

[!NOTE] Las colecciones dinámicas ofrecen gran flexibilidad frente a los arreglos de tamaño fijo.

✅ UML y Modelado

  • Creación de diagramas de clases para planificar y estructurar el código antes de implementarlo.

[!IMPORTANT] Modelar en UML permite mantener el código organizado y facilita su mantenimiento y expansión.


🏆 Proyecto Integrador (destacado)

El Proyecto Integrador fue la instancia más exigente y enriquecedora del curso.
Consistió en desarrollar una solución completa que:

✅ Gestionó datos complejos mediante clases y herencia.
✅ Utilizó polimorfismo para tratar distintos tipos de objetos.
✅ Incluyó interacción mediante menús y persistencia con archivos.
✅ Resolví un problema real aplicando diseño modular en Java.

[!CAUTION] Este proyecto requirió aplicar todos los conceptos aprendidos. Un diseño pobre podría haber derivado en código rígido y difícil de mantener.


🎓 Proyecto del Examen Final

Como parte de la evaluación, se desarrolló un programa autónomo que:

  • Demostró la correcta aplicación de POO.
  • Resolvió problemas eficientemente bajo presión.
  • Mostró buenas prácticas de codificación y documentación.

🧰 Tecnologías utilizadas


📌 Notas

  • Todos los proyectos y ejercicios fueron desarrollados en el marco de la asignatura Programación Orientada a Objetos - UNNE (FaCENA) en 2024.
  • Los ejercicios incluyen comentarios y explicaciones en español.
  • Este repositorio refleja todo el recorrido desde los fundamentos de Java hasta la creación de aplicaciones reales con POO.

❤️🐔 Hecho con pasión y dedicación por Tobias