百科问答小站 logo
百科问答小站 font logo



如何评价 Chromium 项目的代码质量? 第1页

  

user avatar   xin-si-deng-long 网友的相关建议: 
      

超大型工程实践,非常高,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生成每一帧的源头),然后输出到物理设备,设计非常美。

chromium.org/developers


Blink, VIZ, LayoutNG, CAP2 很多很多。。。。。




  

相关话题

  怎样阅读 Chromium 源码? 
  怎样阅读 Chromium 源码? 
  如何评价Microsoft Edge ?是否为Google Chrome 套壳? 
  为什么没有支持周期长达数年的开源浏览器? 
  如何评价Microsoft Edge ?是否为Google Chrome 套壳? 
  如何看待微软 Edge 浏览器将使用 Chromium 内核? 
  如何看待微软 Edge 浏览器将使用 Chromium 内核? 
  如何看待微软 Edge 浏览器将使用 Chromium 内核? 
  Chrome for iOS 为何无法使用自主研发的 Chromium WebKit 和 V8 JavaScript 引擎? 
  如何评价Microsoft Edge ?是否为Google Chrome 套壳? 

前一个讨论
为什么陆地上常见的动物都是两个鼻孔?
下一个讨论
如何看待争议颇多的(索隐派)癸酉本《红楼梦》?





© 2024-12-23 - tinynew.org. All Rights Reserved.
© 2024-12-23 - tinynew.org. 保留所有权利