doc.dev1x.org

Adapter

1. 目的

2. 課題

3. 解決策

class MyComponent:
    def __init__(self, value):
        self.value = value

    def exec():
        return self.value
class Target(metaclass=ABCMeta):
    @abstractmethod
    def target_method():
        pass
class Adapter(Target):
    def __init__(self, value):
        self.component = MyComponent(value)

    def target_method():
        return self.component.exec()

4. メリット

5. デメリット

6. 注意事項

継承によるAdapterは原則として避ける