【发布时间】:2013-06-06 19:04:14
【问题描述】:
由于我对任何主流浏览器(Firefox、Chrome、Opera)以及我尝试过的不那么流行的浏览器(近十几个)都不完全满意,因此我决定 DIY 并制作一个网络我想要最好的浏览器。
主要目标是让它使用尽可能少的 RAM - 我的笔记本电脑安装了 1GB 并且不可扩展。但它必须保留我需要的所有基本功能 - 完整的 JavaScript 支持、对外部 Flash 插件(如 Adobe 的插件)的支持,以及可能使用 EasyList 过滤器的广告拦截器。
但我在制作原生 GUI 应用程序方面没有太多经验,而且在谷歌上搜索了相当长一段时间后,我几乎没有发现关于哪些框架最能胜任这项工作的信息。所以我问:
- 以下哪一个:Gecko 或 Webkit,在一般情况下使用较少的内存?如果它们大致相同,哪个更易于使用和“混乱”(例如,删除冗余功能)?是否有任何其他浏览器引擎我可以在此任务中尝试?
- 哪一个使用较少的内存来显示基本控件:Qt4 还是 Qt5? QtWebkit 怎么样 - 它在 Qt5 中变胖了,还是正好相反?如果我决定使用 Qt4,我能否将 Webkit 引擎(从 QtWebkit)更新到新版本?将 vanilla Webkit 或 Gecko 集成到 Qt 应用程序有多难?
- 您是否知道任何其他本机 GUI 库可以比 Qt 做得更好或更好,尤其是在内存消耗方面? wx小部件? GTK+?我至少需要同时支持 Windows 和 Linux。
- 哪个开源 JS 引擎使用的内存最少?它不一定需要运行得最快。
【问题讨论】:
-
如果创建自己的浏览器是一种爱好,或者只是想学习一些东西,那完全没问题。我的观点是,创建一个新的工作浏览器是一个大型项目。您是否考虑过为 Firefox 或 Chrome 制作自己的插件来改变您讨厌的功能?那将是一个小得多的项目,您将获得一些浏览器如何工作的经验。当然,使用插件您无法更改浏览器使用的内存量,但如果您使用现成的库构建浏览器,您也无法很好地控制它们的内存使用情况。