Programación Orientada a Objetos

Programación Orientada a Objetos (teoría y práctica). Lenguaje C#.

8 clases
32 horas totales
C#

¿Ya decidiste empezar?

Cupos limitados, reservá tu lugar hoy!

❓ ¿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

1

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.

2

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.

3

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.

4

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

5

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.

6

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.

7

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.

8

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.

Los exámenes son parte esencial del proceso pero lo más importante es que entiendas y apliques lo aprendido.
Es requisito la aprobación del examen final para la extensión del certificado de aprobación.

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