Capítulo 19. Jerarquías

Este trabajo se ha traducido utilizando IA. Agradecemos tus opiniones y comentarios: translation-feedback@oreilly.com

Un aspecto de una clase era actuar como repositorio de código e información compartida por todas las instancias (objetos) de esa clase. En términos de eficiencia, es una buena idea porque se minimiza el espacio de almacenamiento y los cambios pueden hacerse en un único lugar. Sin embargo, resulta muy tentador utilizar este hecho para justificar la creación de tu jerarquía de clases basada en código compartido en lugar de comportamientos compartidos.. Crea siempre jerarquías basadas en comportamientos compartidos.

David West, Pensamiento objetual

19.0 Introducción

La herencia de clases suele utilizarse erróneamente para la reutilización del código debido a razones históricas. Deberías preferir la composición, pero no es tan obvio y requiere más experiencia. La composición es dinámica y puedes cambiarla fácilmente, probarla, reutilizarla, etc., dando flexibilidad a tus diseños. En este capítulo encontrarás recetas para minimizar el acoplamiento accidental que añades al utilizar jerarquías.

19.1 Romper la herencia profunda

Problema

Tienes jerarquías profundas para reutilizar el código.

Solución

Encuentra el protocolo y aplana la jerarquía favoreciendo la composición sobre la herencia.

Debate

La reutilización de la subclasificación estática crea más acoplamiento que la reutilización de la composición dinámica. Las jerarquías profundas ...

Get Libro de cocina de código limpio now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.