设计模式面试题预测:PaiFlow都用到了哪些设计模式?
1. 你在项目中用到了哪些设计模式?能举几个例子吗?
考察点:设计模式应用
参考答案:
项目里用到的主要设计模式有:
1. 策略模式(NodeExecutor),不同类型节点有不同的执行逻辑,通过接口多态实现:
public interface NodeExecutor {
NodeTypeEnum getNodeType();
NodeRunResult execute(NodeState state);
}
// LLMNodeExecutor, PluginNodeExecutor, StartNodeExecutor...
2. 模板方法模式(AbstractNodeExecutor),父类定义执行骨架,子类实现具体逻辑:
public abstract class AbstractNodeExecutor {
public NodeRunResult execute() {
onNodeStart();
resolveInputs();
NodeRunResult result = executeNode(); // 子类实现
storeOutputs();
return result;
}
}
3. 工厂模式(ChatModel 构建),根据配置动态创建不同的模型客户端:
public ChatModel buildChatModel(ModelConfig config) {
switch (config.getProvider()) {
...
热门评论
8 条评论
回复