Python设计模式与测试:复合模式与单元测试全解析
1. 复合模式概述
复合模式允许从简单组件构建复杂的树状结构。这些组件被称为复合对象,根据是否有子组件,它们的行为既像容器又像变量。传统上,复合对象中的每个组件要么是叶节点(不能包含其他对象),要么是复合节点,关键在于复合节点和叶节点可以有相同的接口。
1.1 复合模式的应用场景
复合模式在多种树状结构中非常有用,如文件/文件夹树、GUI 小部件层次结构、树集、图和 HTML DOM。
1.2 复合模式实现示例
以下是一个使用 Python 实现文件/文件夹复合模式的示例:
class Component:
def __init__(self, name):
self.name = name
def move(self, new_path):
new_folder = get_path(new_path)
del self.parent.children[self.name]
new_folder.children[self.name] = self
self.parent = new_folder
def delete(self):
del self.parent.children[self.name]
class Folder(Component):
def __init__(self, name):
super().__init__(name)
超级会员免费看
订阅专栏 解锁全文
1748

被折叠的 条评论
为什么被折叠?



