¿Cuál es una buena manera de aprender el diseño OOP?

Párrafo del libro – “Patrones de diseño para maniquíes”


Parte II: Convertirse en un Maestro OOP
Los patrones dependen en gran medida de la programación orientada a objetos (OOP), y en esta parte, puedes ver cómo los patrones te permiten encargarte del trabajo orientado a objetos. Le muestro cómo redefinir pasos de algoritmos usando subclases con el patrón de Método de plantilla, cómo convertir la interfaz de un objeto en una interfaz totalmente diferente con el patrón de Adaptador, cómo manejar colecciones de objetos con los patrones Iterador y Compuesto, cómo coordinar objetos con los patrones de Comando y Mediador, y mucho más en esta parte. Después de leer esta parte, serás un experto en OOP.


Solo diría que aprenda los principios de OOD, los patrones de diseño y luego los implemente en sus códigos.
Por ejemplo, considere un principio de diseño OO “Encapsulate What Varies” . En primer lugar, aprenda lo que dice, luego intente implementarlo en su código / proyecto. Lo leí en alguna parte: “No necesitas ser un maestro de la POO para aprender patrones de diseño, sino para convertirte en que necesitas aprender patrones de diseño”

He tenido un gran éxito con la serie de libros Head First hablando sobre OOD y OOP