手撸golang 行为型设计模式 责任链模式
手撸golang 行为型设计模式 责任链模式 缘起 最近复习设计模式 拜读谭勇德的<<设计模式就该这样学>> 本系列笔记拟采用golang练习之 责任链模式 责任链模式(Chain of Responsibility Pattern)将链中每一个节点都看作一个对象, 每个节点处理的请求均不同, 且内部自动维护下一个节点对象。 当一个请求从链式的首端发出时, 会沿着责任链预设的路径依次传递到每一个节点对象, 直至被链中的某个对象处理为止, 属于行为型设计模式。 责任链模式主要适用于以下应用场景。 (1)多个对象可以处理同一请求,但具体由哪个对象处理则在运行时动态决定。 (2)在不明确指定接收者的情况下,向多个对象中的一个提交请求。 (3)可动态指定一组对象处理请求。 (摘自 谭勇德 <<设计模式就该这样学>>) 场景 某业务系统, 需要将日志按严重等级(Debug/Info/Error), 分开不同文件 码农王二狗, 于是设计了DebugLogger, InfoLogger, ErrorLogger三个日志类 业务层根据日志输出等级, 分别...





