Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Introduction to Composition | Composición
Programación Orientada a Objetos en Python

bookIntroduction to Composition

Desliza para mostrar el menú

Composición representa una relación de tiene-un, donde una clase contiene una instancia de otra clase en lugar de heredar de ella. Por ejemplo, un Coche tiene un Motor. Esto difiere de la herencia, que modela una relación de es-un, como en Camión es un Vehículo.

1234567891011121314151617
class Engine: def start(self): return "Engine started" class Car: def __init__(self, brand, engine): self.brand = brand self.engine = engine # Car HAS an Engine def drive(self): return f"{self.brand}: {self.engine.start()}" engine = Engine() car = Car("Toyota", engine) print(car.drive())
copy

Car no hereda de Engine. En su lugar, contiene un objeto Engine y lo utiliza para realizar su trabajo. Esto muestra una relación de tiene-un, no de es-un, lo que hace que el diseño sea más flexible y fácil de modificar posteriormente.

Note
Nota

Se debe utilizar la composición cuando se necesitan partes flexibles, límites claros y reemplazo de comportamiento en tiempo de ejecución. Preferir la herencia cuando existe una jerarquía verdadera de tipo es-un que sea obvia y estable.

question mark

¿Cuál es el principal beneficio de utilizar la composición?

Selecciona la respuesta correcta

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 3. Capítulo 1

Pregunte a AI

expand

Pregunte a AI

ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

Sección 3. Capítulo 1
some-alt