Curso de Programación Orientada a Objetos
El mejor curso de Programación Orientada a Objetos de la web.
Material disponible
Intermedio
10 Clases 21 h
Este curso te ofrecerá una base sólida para entender la filosofía de la Programación Orientada a Objetos y el diseño de software orientado a objetos. 

No basta solo con conocer la sintaxis de la programación orientada a objetos (POO), hay que aprender a "pensar en objetos". Te acercamos el curso de programación orientada a objetos más académico, con el que aprenderás las características de este paradigma de programación de una manera profunda y detallada.

Conscientes que para entender bien la POO es necesario usar algún lenguaje de programación en el que escribir los ejemplos, usaremos Java, por ser un lenguaje 100% orientado a objetos  que tiene unas características adecuadas desde un punto de vista académico y una sintaxis bien conocida. Las clases del curso las imparte Luis Fernández Muñoz, profesor de la EUI en la UPM (Universidad Politécnica de Madrid).

Para aprender con otros lenguajes, después de haber realizado este curso fundamental, que todo programador debería conocer, te recomendamos el Curso de Programación Orientada a Objetos con PHP

Qué aprenderé en el Curso de Programación Orientada a Objetos

En el curso aprenderemos la teoría de la Programación Orientada a Objetos y el diseño de software orientado a objetos de la manera más académica posible. La idea es conocer al detalle los fundamentos de la POO, no tan enfocado en un lenguaje en particular, sino en general a las posibilidades de este paradigma de la programación. El estudiante podrá aprender a "pensar en objetos", así como a crear programas según la filosofía de la Programación orientada a objetos, potenciando sus virtudes y evitando malas prácticas.

Objetivos del curso

Este curso está pensado para ofrecer una base sólida sobre la Programación en general y la orientación a objetos en particular, de modo que los estudiantes aprendan sus fundamentos, aprovechando sus mejores características y evitando malas costumbres derivadas de un conocimiento parcial o malas enseñanzas. Para ello hemos diseñado un programa intensivo dedicado a conocer las características principales de la programación orientada a objetos, con ejemplos y ejercicios que te ayudarán también a conocer las mejores prácticas.

Clases y contenidos

1. Introducción a la Programación Orientada a Objetos Gratis

En esta clase nos introducimos en la Programación Orientada a Objetos. Realizamos un repaso a sus beneficios fundamentales y luego abordamos con detalle los conceptos más básicos utilizados en este paradigma de la programación: Clases, objetos, métodos, mensajes, atributos y estado.

2. La raíz de la programación estructurada

Esta clase es una zambullida en el lenguaje Java, en la que se explican particularidades importantes y generales de la programación estructurada. Es importante conocerla porque es la raíz que heredan los lenguajes orientados a objetos, aunque se aborda de una manera diferente que otras aproximaciones que se puedan haber visto, más técnica, incidiendo especialmente en conceptos que pueden causar confusión a programadores menos experimentados, como las referencias.
Se aborda: Comentarios, Palabras Reservadas, Tipos Primitivos, Declaración de Variables, Declaración de Constante, Operadores, Expresiones, Asignación, Vectores de Tipos Primitivos, Matrices de Tipos Primitivos, Sentencias de Control del Flujo de Ejecución.

3. Clases y Objetos. Vista pública

En los primeros minutos de esta clase (18) se acaban con puntos pendientes de la clase anterior y luego se comienza a abordar en detalle ya el mundo de la orientación a objetos.
Ya sobre OOP, se explican como primer punto las vistas públicas y privadas de las clases y objetos, mostrando ya código de sintaxis para la definición de sus miembros. En esta clase se centra mucho el contenido en lo que sería la vista pública, qué es lo que se conoce de las clases y objetos desde fuera. Se explica también el concepto de constructor.
Se comienza a realizar los primeros ejemplo (clase intervalo), mostrando un código esquemático, que representa principalmente a lo que sería la vista pública.

4. Usar objetos. Vista privada de las clases

Comenzamos con un repaso rápido del día anterior y abordamos otros componentes de la vista pública. Se insiste en el concepto de constructor y avanzamos con el concepto de destructor.
Luego se realizan nuevos ejemplos, el de la clase Fecha, Fracción, GestorIO, StringBuffer..., viendo cómo serían las cabeceras de sus métodos, lo que formarían la vista pública de las clases de los ejemplos.
A continuación se aborda la creación de objetos con new, viendo varios ejemplos útiles y nociones sobre constructores, destructores, referencias, etc. Luego se explica qué cosas se pueden hacer con los objetos una vez creados, cómo se accede a miembros de los objetos, aquellos métodos que la vista pública nos proporciona. También se explica qué tipo de operaciones puedes hacer con las referencias a los objetos y cómo crear arrays de referencias a objetos.
Al final se empieza a explicar la parte de la vista privada: qué es lo que debemos de pensar a la hora de implementar las clases y por qué la decisión sobre sus atributos debe decidirse durante la implementación de la vista privada. Se aborda la implementación de la vista privada de la clase intervalo.

5. Implementar una clase

En esta clase nos dedicamos principalmente a abordar la implementación de la vista privada de una clase, Intervalo. Durante la clase se explican muchos detalles realmente importantes de lo que es la programación orientada a objetos, por la práctica. Se repasan los conceptos de clase, objeto, vistas pública y privada, métodos y atributos y se introduce nuevos elementos como la palabra "this" necesaria en el momento de la implementación.
Está llena de ejemplos concretos sobre los beneficios y buenas prácticas de OOP, como la encapsulación, que permite cosas tales como reimplantar una clase, incluso cambiando sus atributos, sin que se cambie su vista pública y por tanto no afecte al resto de un programa. Permite la reutilización del código y su comprensión, facilitando el mantenimiento.
Se aborda también la diferenciación entre visibilidad pública o privada, explicando cuándo usar cada una.

6. Ejercicios completos OOP

Sesión práctica donde realizamos varios ejercicios que nos permita seguir asimilando conceptos aprendidos hasta el momento.
Es interesante para aterrizar ideas, concretar lo aprendido hasta el momento y a la vez obtener guías con buenas prácticas de codificaci´ón. Entre otras cosas interesantes, se puede apreciar que con la OOP, unos objetos se apoyan en otros para completar sus tareas, llevando el código a niveles elevados de complejidad, sin que ello dificulte su lectura.

7. Metodología top down para OOP

Se comienza con unas pequeñas notas sobre los ejercicios de la clase pasada.
Luego se explica una metodología de desarrollo sencilla como es la top down. Esta técnica es válida para la realización de pequeños programas y nos puede aclarar cómo abordar el desarrollo de un sistema orientado a objetos donde colaboren varios objetos de distintas clases para la resolución de un único problema.
En la parte práctica de la clase se desarrolla un juego de las tres en raya (Tic Tac Toe), pensando en los distintos objetos que se necesitará y plasmándolo en código.

8. Nuevos ejercicios

En esta clase se continua con las prácticas de OOP. Se completa el ejercicio de las tres en raya.
Se comienza el desarrollo de un nuevo ejemplo, el juego del solitario típico del sistema Windows.

9. Herencia

En esta clase se avanza con el ejercicio del solitario durante los primeros minutos (38).
Luego se comienza el tema de herencia. Se explica lo que es la herencia y cómo nos permite nuevas vías de la reutilización del código y su facilidad de mantenimiento. Se explican las jerarquías, y sus distintos tipos, haciendo hincapié en las condiciones que deben darse para aplicar herencia.
Ya en el código se puede ver cómo se define una herencia, extends, y cómo usar ciertas palabras como super, protected, etc.
También se explican los métodos abstractos y sus implicaciones, qué producen y los motivos que nos obligan a usarlos.

10. Polimorfismo

Se comienza repasando conceptos de herencia de la clase anterior, para abordar luego en detalle el concepto de polimorfismo.
Qué es el polimorfismo, por qué es útil y como no usarlo cuando se debe deriva en diversos problemas críticos del mantenimiento de las aplicaciones.
La parte práctica completa el ejercicio del solitario del Windows, donde se aplica tanto herencia como polimorfismo para la implementación de las clases.

Valoraciones

Iñigo Echarri Garcia

Victor Verdugo

Max Montero

Marcelo

Jaime Aguila Sanchez

Dario s

Hugo Campos

Gynny

hernando alberto pinilla hurtado

Alejandro Cerezo

RogerVL

Ilya Kabushko

Yosit

JOSE EMMANUEL SIRVAS RUEDA

JMSanchez

Ingrid Carolina Peláez

Arturo Portable

Holden

Adrian Zelada Torrez

Jorge62

Antonio José Sinoga

xavier gomez canals

Grandioso Luis! Das valor a las cosas importantes de esta profesión. Muy buena manera de hilar los conceptos. Gracias!

Christian Barrios Fragozo

Remy

Muy buen actor el profesor

Antonio Mundo

Excelente

Eric

Lydia Tapiero Eljarrat

Muy interesante y se aprende creo que de manera eficaz

Josue Poma

José Carlos

Soy estudiante de desarrollo de aplicaciones web y algunos de los cursos que he podido hacer son mucho más completos de lo que te enseñan en el instituto.

Rubén Galán Jiménez

Marco Antonio Fernández

Daniel Ricardo Velasquez Quitian

Jorge David Granda León

David García

Maximiliano perrone

Julián Santamaría González

Un curso bien elaborado, se hace mucho incapié en la captación del concepto, imprescindible para adquirir una buena base.

Sashir Estela

rafasu

El mejor curso de programación en el que he estado. Y he estado en muchos.

Oscar Castro

ARSYS INTERNET SLU

Muy bien explicado. Se nota que Luís lo vive y lo domina. Le apasiona el tema y sabe transmitirlo.

Teresa del Río

Explican muy bien conceptos muy abstractos, para mi complejos y te enseñan a pensar y posicionarte frente a un caso práctico. Muy bueno

Angel Diaz

Excelente curso.

José Luis Roncal Cancino

Muy buen curso. El docente muy ameno y con gran dominio del tema. Muchas gracias!!!

¿Conoces nuestra tarifa plana?

Toda la formación de EscuelaIT, con más de 130 cursos completos para aprender las más variadas tecnologías de programación, diseño y marketing online. Todo! con tu suscripción.

Suscríbete