超大型工程实践,非常高,Design Pattern用的非常美,举些栗子:
Observer :
假如你要实现 RenderFrame 的相关事件监听处理,
只需要实现 RenderFrameObserver 就可以了。
类似的Observer有: RenderThreadObserver,WebContentsObserver,RenderViewObserver 等。
Delegate :
例如 DownloadManagerDelegate , WebContentsViewDelegate ,非常方便我们自己定义很多模块化的功能,例如 Download,Plugin,Play,Media 相关等等。
Mojo IPC:
Chromium Mojo , interprocess IPC , 实现的非常经典。以后的Chromium 是微服务化的,
每个模块是独立的一个(Process/Thread),通过Mojo进行通讯。
Google V8:
真真的黑科技,各种奇技淫巧,令人叹服。
Chromium base:
task/run loop/callback/bind/smart_ptr 等, 一整套跨平台异步EventLoop实现。
Surface Service:
抽象了一个宏观的Surface,来管理聚合每一个帧(DisplayClient生成每一帧的源头),然后输出到物理设备,设计非常美。
https://www. chromium.org/developers /design-documents/chromium-graphics/surfaces
Blink, VIZ, LayoutNG, CAP2 很多很多。。。。。