# Design Pattern Composite Pattern https://ithelp.ithome.com.tw/articles/10207478 ``` import abc class component(metaclass = abc.ABCMeta): def __init__(self,name): self.name = name self.group = [] @abc.abstractmethod def add(self,element): return NotImplemented @abc.abstractmethod def display(self): return NotImplemented class composite(component): def __init__(self,name): super(composite,self).__init__(name) def add(self,element): self.group.append(element) def display(self): print(self.name,' manage:') print(" ") for element in self.group: element.display() print(" ") class leaf(component): def __init__(self,name): self.name = name def add(self,element): pass def display(self): print(self.name) if __name__ == '__main__': company = composite('Gigabyte') eleCompany = composite('cloudmatrix') company.add(eleCompany) group1 = composite('algro') eleCompany.add(group1) group1.add(leaf('kebin')) group1.add(leaf('lester')) group2 = composite('system') eleCompany.add(group2) group2.add(leaf('kiwi')) company.display() ``` Facade Pattern https://ithelp.ithome.com.tw/articles/10206318
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up