返回文章列表

前端规范 vs 后端规范:同一交付体系的两侧

前端关注工程化、可访问性、组件边界和构建检查;后端关注分层、配置、安全和数据库变更。

知识库依据

基于《前端规范》《后端规范》《比较_前端规范_vs_后端规范》《概念_质量门禁与CI流程》和团队研发规范实体页扩展。

规范不是两本文档

前端规范和后端规范常被分开写,但它们解决的是同一个问题:多人协作下如何稳定交付。前端更靠近用户体验、状态管理、组件复用和构建产物;后端更靠近业务规则、数据一致性、权限、安全和可观测性。

好的团队规范应该有统一语气和统一门槛。比如“必须、应该、禁止”需要在两端含义一致;分支、提交、评审、测试也应该使用同一套流程承接。

  • 前端负责页面结构、交互状态、组件边界和构建质量。
  • 后端负责接口契约、业务流程、事务边界和数据安全。
  • 共同部分包括 Git、提交、评审、CI、发布和事故复盘。
  • 规范要能被检查工具承载,而不是只靠口头提醒。

前端侧的检查重点

前端规范要避免只写目录结构。真正影响交付质量的是组件职责是否清楚、接口错误态是否完整、移动端是否可用、可访问性是否基本达标,以及构建产物是否稳定。

对于业务后台,前端不应该做得像营销页。它需要密度、扫描效率、表单容错、列表筛选、批量操作和权限态处理。组件抽象也应该围绕真实业务重复,而不是为了抽象而抽象。

  • 路由、状态、请求、权限、表单和表格要有固定模式。
  • 按钮、输入框、弹窗、空状态和错误态要统一。
  • 移动端导航不能直接消失,至少要有菜单入口。
  • 构建前跑 lint、type-check 和 build。

后端侧的检查重点

后端规范的核心是把变化放到合适位置。Controller 不承载复杂流程,Business 表达业务动作,DAO 收敛数据访问。配置读取、Migration、SQL 参数绑定、异常处理和日志埋点,是后端规范里最容易影响线上稳定性的部分。

当团队能用同一套质量门禁检查前后端时,规范才真正进入工程系统。否则它只是文档。

  • Controller 只处理协议、校验和响应。
  • Business 负责规则、流程、事务和跨 DAO 编排。
  • DAO 负责查询、写入和参数绑定。
  • 数据库结构变化必须走 Migration 并能回滚。

共同语言:必须、应该、绝不

知识库里的前后端规范都使用规则强度来表达要求,这一点非常重要。团队协作最怕同一句话在不同人那里强度不同。“必须”代表违反就不能合并,“应该”代表默认遵守但可说明例外,“绝不”代表高风险红线。

这种表达方式让规范从建议变成契约。它也方便代码评审时减少情绪:评审不是某个人挑剔,而是对照共同约定。

  • 必须:安全、数据一致性、构建通过、接口契约。
  • 应该:命名、组件边界、目录组织、错误态完整。
  • 绝不:拼接 SQL、提交密钥、跳过权限、直接改生产配置。
  • 例外情况必须在 PR 中说明原因和后续处理。

前端规范的核心不是 UI 好看

前端规范在知识库里覆盖命名、目录、HTML/CSS/TS、组件职责、API 层收敛、可访问性、兼容性和性能。对于业务系统,前端的核心目标不是把页面做得热闹,而是让重复操作稳定、清晰、少出错。

这意味着表格筛选、批量操作、权限态、空状态、错误提示、加载态和移动端导航都要被当成一等功能。

  • API 请求集中封装,避免组件里到处拼接口。
  • 表单字段、校验、提交态和错误态要统一。
  • 权限按钮隐藏之外,也要考虑禁用态和解释文案。
  • 移动端不能把导航直接隐藏到不可访问。

后端规范的核心是数据和流程可信

后端规范更关注 Controller-Business-DAO 分层、配置读取、SQL 注入防护、Migration 管理和环境映射。后端一旦出错,影响的不只是页面体验,而是数据、权限和资金口径。

所以后端规范往往更强调边界:业务逻辑不要塞进 Controller,配置不要直接 env,数据库变更不要手改,SQL 不要拼接。

  • Controller 面向协议,不承载长流程。
  • Business 面向业务动作,承接事务和规则。
  • DAO 面向数据域,统一查询与写入。
  • Migration 让表结构变化可追溯、可评审、可回滚。

把规范落到 CI,而不是贴在墙上

如果规范不能被工具检查,它最终会退化成口号。前端可以用 ESLint、TypeScript、测试和构建兜底;后端可以用语法检查、测试、静态分析、迁移检查和接口冒烟兜底。共同部分则由 Git 分支、提交规范和 PR 模板承接。

规范的成熟标志不是文档越来越长,而是人工提醒越来越少。

  • PR 模板检查需求、测试、影响范围、回滚方案。
  • CI 失败自动阻止合并。
  • 发布记录绑定分支、提交和环境。
  • 事故复盘反向更新规范和门禁。