Programación Orientada a Objetos
Programación Orientada a Objetos (teoría y práctica). Lenguaje C#.
¿Ya decidiste empezar?
❓ ¿Qué es esta materia?
Programación Orientada a Objetos (teoría y práctica). Lenguaje C#.
La programación orientada a objetos (POO) es un paradigma de programación que organiza el software en "objetos", que son instancias de "clases". Cada objeto tiene propiedades (también llamadas atributos) y métodos (funciones) que definen su comportamiento y su estado.
¿Qué vas a aprender?
- A pensar en objetos, no en pasos, cambiar el enfoque de "cómo se hace" a "quién lo hace", entendiendo la lógica detrás de la programación orientada a objetos.
- A modelar el mundo real, crear representaciones de cosas concretas (como un auto o una persona) usando clases y objetos.
- A organizar tu código con claridad, con el uso de encapsulamiento para proteger datos y mantener tu código más limpio y mantenible.
- A evitar la duplicación mediante el uso de la herencia, permitiendo que nuevas clases (hijas) hereden atributos y métodos de una clase existente (padre) para crear software más organizado, mantenible y modular.
- A escribir código más flexible y reutilizable mediante polimorfismo para definir funciones aplicables a múltiples tipos de objetos.
- A relacionar objetos entre sí, entendiendo las diferencias entre composición, agregación y herencia para diseñar relaciones realistas entre clases.
- A manejar errores con elegancia, controlar fallos y validar datos usando excepciones personalizadas.
- A aplicar buenas prácticas, incorporar principios SOLID y patrones diseño para que tu código sea escalable y entendible.
- A diseñar casos de uso, diagramas de clases y diagramas de secuencia con UML para organizar tus clases y relaciones antes de escribir código.
- Patrones de diseño comunes, en forma teórica a modo de introducción.
Módulos
Introducción a la Programación Orientada a Objetos y UML
Qué es la POO? Historia y evolución. Diferencias entre programación estructurada y orientada a objetos. Clases, Objetos, Métodos y Atributos. Definición de UML y sus artefactos. Ejercicios.
Clases y Objetos
Definición de una clase y un objeto. Sintaxis de clases y creación de objetos. Atributos (propiedades) y métodos (funciones) de una clase. Ejercicio: Crear una clase Coche con atributos como marca, modelo, año y métodos como arrancar(). Ejercicios.
Encapsulamiento y Abstracción
Qué es el encapsulamiento? Modificadores de acceso: public, private, protected. Uso de getters y setters para acceder a los atributos de una clase. Abstracción: Crear interfaces y clases abstractas. Ejercicios.
Herencia
Qué es la herencia en POO? Clases base y clases derivadas. Sobreescritura de métodos (overriding). Herencia múltiple (según el lenguaje). Ejercicios
Polimorfismo
Qué es el polimorfismo? Polimorfismo de inclusión (en tiempo de compilación) y de sobrecarga. Polimorfismo de sustitución (en tiempo de ejecución). Clases abstractas e interfaces. Aplicar con las clases Vehículo, Coche, y Moto. Ejercicios.
Composición y Agregación
Composición: Relaciones "tiene un". Agregación: Relaciones "tiene un" más débiles que la composición. Diferencias entre composición y herencia. Ejercicio: Crear una clase Coche que tenga una relación de composición con una clase Motor. Ejercicios.
Excepciones y Manejo de Errores
Qué son las excepciones? Sintaxis básica para manejo de excepciones (try, catch, finally). Crear excepciones personalizadas. Propagar excepciones. Ejercicio: Crear una clase que maneje excepciones para validar datos de entrada. Ejercicios.
Buenas Prácticas y Diseño de Software
Principios SOLID en POO. Patrones de diseño: Singleton, Factory, Observer. Refactorización de código orientado a objetos. Testeo y depuración en POO. Ejercicio: Refactorizar una solución utilizando los principios SOLID. Ejercicios.
Trabajos Prácticos
Trabajo Final Obligatorio
El alumno deberá realizar dos programas, uno de su elección donde deberá ejecutarlo y explicar qué es lo que hace. El otro será solicitado por el instructor a cargo. Se extenderá el certificado de aprobación si se aprueban el examen y ambos trabajos.
Exámenes y Recuperatorios
Evaluaciones programadas
- Examen Parcial: se toma al alcanzar el 50% del curso.
- Examen Final: al finalizar el contenido completo.
Recuperatorios: cada examen cuenta con una instancia adicional en caso de que necesites repetirlo. Quiero que tengas tu oportunidad real de demostrar lo aprendido.
Extra life
Domingo, Talleres de Práctica
El docente a cargo propone talleres virtuales los días domingos a los fines de repasar temas, evacuar dudas, adelantar trabajos prácticos y realizar las prácticas con la mentoría apropiada.
Sí, sí, leíste bien... domingos por la mañana de 9 a 13 o por la tarde de 14 a 18.🙂
¿Ya decidiste empezar?
Detalles de la materia
-
Duración
8 clases (32 hs totales)
-
Idioma
Español
-
Certificaciones
Certificados de aprobación y finalización
Requisitos
- Programación Estructurada
- Buena señal de internet
- Si es Intel, mín core i5
- Si es AMD, mín A10-9700
- RAM, mín 16 GB
- Disco, mín 1TB
- SSD, disco sugerido
- Mic, auriculares y cámara web