控制台项目四层架构咨询:架构类型及输入处理层命名
问题解答
1. 所属架构类型
这属于分层架构(Layered Architecture),是MVC(Model-View-Controller)模式的扩展变种。标准MVC分为View、Controller、Model三层,你新增的中间层对Controller的职责做了拆分:让Controller专注于业务逻辑执行,中间层承担输入预处理、请求路由的工作,完全符合分层架构“关注点分离”的核心设计原则。
2. 层级命名建议
结合你控制台输入解析、请求分发到对应Controller/Model的业务场景,从候选选项中优先推荐以下命名:
首选:Router(路由层)
你的核心工作是根据输入格式(纯表达式/命令+参数+表达式),将请求分发到对应的Controller方法或Model对象,这完全匹配**路由(Router)**的职责定位——接收请求、解析匹配规则、分发至对应处理单元。这个命名是行业通用规范,语义清晰,其他开发者能快速理解该层作用。
次选:Input Handler(输入处理器)
如果团队更侧重该层“输入解析、格式分类”的核心动作,这个命名更直白,能直接体现该层的核心工作:处理控制台输入、清理格式、传递给后续业务层。
不推荐选项说明
communication layer:语义过于宽泛,无法精准体现输入解析与路由的核心职责middleware:中间件通常用于请求链中的通用拦截/增强逻辑(如日志、权限校验),和专门做输入路由的定位不符proxy:代理层核心是请求转发与隔离,不涉及输入解析分类的逻辑controller of controllers:命名冗余,不符合简洁的架构命名规范decorator:装饰器用于增强已有对象的功能,与输入路由的职责不匹配control layer:语义模糊,容易和现有controllers层混淆input controller:会与controllers层的命名产生混淆,Controller通常对应业务逻辑处理,而非输入解析
内容的提问来源于stack exchange,提问作者juanpyusun
相关产品推荐
相关产品推荐

