O'Reilly logo

Python Unlocked by Arun Tigeraniya

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Adaptor pattern

Key 5: Bridging class interfaces.

This pattern is used to adapt a given class to a new interface. It solves the problem for an interface mismatch. To demonstrate this, let's assume that we have an API function that creates a competition to run different animals. Animals should have a running_speed function, which tells their speed to compare them. Cat is one such class. Now, if we have a Fish class in a different library, which also wants to participate in the function, it must be able to know its running_speed function. As changing the implementation of Fish is not good option, we can create an adaptor class that can adapt the Fish class to run by providing the necessary bridge:

def running_competition(*list_of_animals): if len(list_of_animals)<1: ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required