Skip to content
目录

03 — Content 与 Chrome 分层

Chromium 里要区分 contentchrome

content 是什么

content 可以理解为“加载和渲染网页所需的通用浏览器内核层”。它提供 WebContents、导航、Renderer 管理、进程通信等基础能力。

它不应该包含 Chrome 产品特性。

chrome 是什么

chrome 是具体浏览器产品层,包含:

  • 地址栏、书签、下载、历史记录。
  • 扩展、同步、翻译、自动填充。
  • Safe Browsing、账号体系、Chrome 特有 UI。

这些功能可以使用 content 提供的扩展点,但不应该反向污染 content

为什么要分层

主要是为了降低耦合:

  • content 可被 content_shell、测试壳或其他嵌入方复用。
  • chrome 可以添加产品能力,而不破坏通用内核。
  • 依赖方向清晰,避免“页面渲染核心”依赖“Chrome 产品功能”。

常见判断

如果一个能力属于 Web 标准、页面渲染、导航、进程管理,通常在 content 或 Blink 相关层。

如果一个能力属于 Chrome 产品体验,比如同步、扩展、翻译、自动填充,通常在 chrome

总结

content 是 Chromium 的通用网页承载层,chrome 是 Chrome 产品层。二者分层的目的,是让 Web 内核能力可复用、可测试,并避免产品功能反向耦合底层架构。

MIT License.