beast
火狐狸
火狐狸
  • UID48534
  • 注册日期2015-01-10
  • 最后登录2017-09-17
  • 发帖数166
  • 经验150枚
  • 威望0点
  • 贡献值90点
  • 好评度1点
  • 社区居民
阅读:2531回复:13

为什么不用纯c/c++编写火狐?

楼主#
更多 发布于:2015-07-02 23:15
程序文件里有一大堆js文件,内存占用能降下来是见鬼了。

另外,是不是被删贴就会给差评?

最新喜欢:

Ace72Ace72
yfdyh000
千年狐狸
千年狐狸
  • UID29079
  • 注册日期2009-06-07
  • 最后登录2022-05-18
  • 发帖数2262
  • 经验1390枚
  • 威望0点
  • 贡献值52点
  • 好评度139点
  • 社区居民
  • 最爱沙发
  • 忠实会员
1楼#
发布于:2015-07-02 23:47
没有绝对的纯C++。基于Web标准开发是Firefox的特色,能同时促进Web标准的发展,也有效利用开发者资源。
慢并不完全依赖于开发语言,Firefox的内核和性能敏感部分是C++开发的,近年来启动速度也优化了很多。
内存占用高是Chrome的“特色”,Firefox反而占用较低,不信打开几十个标签页去看一看。
beast
火狐狸
火狐狸
  • UID48534
  • 注册日期2015-01-10
  • 最后登录2017-09-17
  • 发帖数166
  • 经验150枚
  • 威望0点
  • 贡献值90点
  • 好评度1点
  • 社区居民
2楼#
发布于:2015-07-02 23:50
yfdyh000:没有绝对的纯C++。基于Web标准开发是Firefox的特色,能同时促进Web标准的发展,也有效利用开发者资源。
慢并不完全依赖于开发语言,Firefox的内核和性能敏感部分是C++开发的,近年来启动速度也优化了很多。
内存占用高是Chro...
回到原帖
不管在卡饭,还是在这里,你的回答,含金量一直很高。
beast
火狐狸
火狐狸
  • UID48534
  • 注册日期2015-01-10
  • 最后登录2017-09-17
  • 发帖数166
  • 经验150枚
  • 威望0点
  • 贡献值90点
  • 好评度1点
  • 社区居民
3楼#
发布于:2015-07-02 23:58
yfdyh000:没有绝对的纯C++。基于Web标准开发是Firefox的特色,能同时促进Web标准的发展,也有效利用开发者资源。
慢并不完全依赖于开发语言,Firefox的内核和性能敏感部分是C++开发的,近年来启动速度也优化了很多。
内存占用高是Chro...
回到原帖
为什么大多数软件不支持插件?比如电骡,只要往里增加一些特性,就要重新编写。
atmouse
狐狸大王
狐狸大王
  • UID44114
  • 注册日期2014-01-27
  • 最后登录2017-12-29
  • 发帖数325
  • 经验266枚
  • 威望0点
  • 贡献值122点
  • 好评度19点
4楼#
发布于:2015-07-03 00:26
yfdyh000:没有绝对的纯C++。基于Web标准开发是Firefox的特色,能同时促进Web标准的发展,也有效利用开发者资源。
慢并不完全依赖于开发语言,Firefox的内核和性能敏感部分是C++开发的,近年来启动速度也优化了很多。
内存占用高是Chro...
回到原帖
fx的界面性能渣的没话说,我部要灵活xul,俺只要高性能。不要请我用chrome,chrome不能ctrl选择表格
PC-JMK6, asus m5a99x, fx8350, radeonhd7870 x2, iec958/ha/HD600, linux-next, systemd, pacman, mesa, xorg, libinput, modesetting w/ glamor, qtile, icecat,
taoww
非常火狐
非常火狐
  • UID39284
  • 注册日期2013-03-18
  • 最后登录2024-04-28
  • 发帖数628
  • 经验574枚
  • 威望0点
  • 贡献值110点
  • 好评度99点
5楼#
发布于:2015-07-03 00:38
beast:为什么大多数软件不支持插件?比如电骡,只要往里增加一些特性,就要重新编写。回到原帖
你可以自己用C/C++开发个简单的支持插件功能的程序就知道难点在哪里了

要实现新特性,不管用不用插件,真正代码上要改动的量差不了多少。插件主要是让第三方开发者能够参与进来
yfdyh000
千年狐狸
千年狐狸
  • UID29079
  • 注册日期2009-06-07
  • 最后登录2022-05-18
  • 发帖数2262
  • 经验1390枚
  • 威望0点
  • 贡献值52点
  • 好评度139点
  • 社区居民
  • 最爱沙发
  • 忠实会员
6楼#
发布于:2015-07-03 01:00
atmouse:fx的界面性能渣的没话说,我部要灵活xul,俺只要高性能。不要请我用chrome,chrome不能ctrl选择表格回到原帖
有点差有些感觉(比如像Chrome某个创意视频,持续打开标签页形成定格动画,Firefox似乎做不到),很渣没感觉,我只能说够用就好。
性能优化问题很麻烦,硬件加速、非主线程合成等特性的推行与合并都造成了不止一个问题(崩溃、残留等等),然而还是在继续进行。或许我只能说you can you up了。
yfdyh000
千年狐狸
千年狐狸
  • UID29079
  • 注册日期2009-06-07
  • 最后登录2022-05-18
  • 发帖数2262
  • 经验1390枚
  • 威望0点
  • 贡献值52点
  • 好评度139点
  • 社区居民
  • 最爱沙发
  • 忠实会员
7楼#
发布于:2015-07-03 01:28
beast:为什么大多数软件不支持插件?比如电骡,只要往里增加一些特性,就要重新编写。回到原帖
插件架构并不是那么简单的,设计方面需要有专业又有领导力的程序员(兼任或者专职架构师)。
比如要考虑:应该允许和能替换哪些部分、怎样实现替换、性能及稳定性考量等等方面。
如果是合作/有分支项目,自身和成果还要有推行标准的实力,否则如果其他分支不接受,会造成冲突乃至分裂。

插件架构如果没有足够的功能需求(比如根本没别人开发插件,而且设计差到自己也不愿意用它继续开发)和成本支持(足够的兴趣或者资金),实现它只是增加了无用的代码和复杂性而已,还容易影响稳定性和安全性。
slitaz
火狐狸
火狐狸
  • UID46269
  • 注册日期2014-06-07
  • 最后登录2016-06-22
  • 发帖数219
  • 经验225枚
  • 威望0点
  • 贡献值6点
  • 好评度13点
  • 社区居民
  • 忠实会员
8楼#
发布于:2015-07-03 04:04
晕。。。有js就不是纯c/c++了?编译firefox只要c/c++编译器就可以了吧?新内核用的是rust编写的呢,不知道今年能不能弄个alpha出来玩玩
atmouse
狐狸大王
狐狸大王
  • UID44114
  • 注册日期2014-01-27
  • 最后登录2017-12-29
  • 发帖数325
  • 经验266枚
  • 威望0点
  • 贡献值122点
  • 好评度19点
9楼#
发布于:2015-07-03 08:48
yfdyh000:有点差有些感觉(比如像Chrome某个创意视频,持续打开标签页形成定格动画,Firefox似乎做不到),很渣没感觉,我只能说够用就好。
性能优化问题很麻烦,硬件加速、非主线程合成等特性的推行与合并都造成了不止一个问题(崩溃、残留等等),然而...
回到原帖
我不行,我只说说,很渣还是继续用
PC-JMK6, asus m5a99x, fx8350, radeonhd7870 x2, iec958/ha/HD600, linux-next, systemd, pacman, mesa, xorg, libinput, modesetting w/ glamor, qtile, icecat,
pcxfirefox
千年狐狸
千年狐狸
  • UID39042
  • 注册日期2012-06-22
  • 最后登录2018-01-15
  • 发帖数2539
  • 经验1263枚
  • 威望2点
  • 贡献值242点
  • 好评度133点
  • 最爱沙发
  • 忠实会员
  • 社区居民
10楼#
发布于:2015-07-03 09:18
纯的话就没有那么方便进行扩展了 也导致如果达到目前的高度扩展体系异常复杂

C/C++的使用好坏对程序员的要求甚高 bug也不易发现
光JS GC这一点 Mozilla就搞了很长时间的研究

如果让我等用C、C++来写,Firefox估计目前内存稳定2G+
http://pcxfirefox.wordpress.com/
meat
火狐狸
火狐狸
  • UID35020
  • 注册日期2011-01-06
  • 最后登录2024-04-26
  • 发帖数267
  • 经验200枚
  • 威望0点
  • 贡献值106点
  • 好评度16点
11楼#
发布于:2015-07-03 13:34
现在浏览器实在是很复杂。应该是普通用户天天接触的单一软件除了操作系统以外最复杂的了。光是按照标准实现各种就让各个浏览器一头烟了。你看opera都玩不下去了吧

用js+xul实现部分顶层功能是很早就定下来的方针,要变先不说那个资源投入,光是这个量就是另外一个浏览器了
aaaa007cn
千年狐狸
千年狐狸
  • UID23968
  • 注册日期2008-05-03
  • 最后登录2022-03-07
  • 发帖数1924
  • 经验1138枚
  • 威望1点
  • 贡献值232点
  • 好评度164点
12楼#
发布于:2015-07-03 13:51
简单地说
没钱没人
最主要还是没钱

而且你也无法保证纯 c/c++ 就一定能速度快(包括开发速度、运行速度)占用资源少
且不说纯 c 和 c++ 就已经是在两个位面了

所以如果你愿意砸个几百万美刀甚至上亿
也许这辈子还是有可能听到个响的
aaaa007cn
千年狐狸
千年狐狸
  • UID23968
  • 注册日期2008-05-03
  • 最后登录2022-03-07
  • 发帖数1924
  • 经验1138枚
  • 威望1点
  • 贡献值232点
  • 好评度164点
13楼#
发布于:2015-07-03 13:54
meat:现在浏览器实在是很复杂。应该是普通用户天天接触的单一软件除了操作系统以外最复杂的了。光是按照标准实现各种就让各个浏览器一头烟了。你看opera都玩不下去了吧

用js+xul实现部分顶层功能是很早就定下来的方针,要变先不说那个资源投入,...
回到原帖
于是谭先生拉了一帮 presto 死硬分子开始用 html + js 给 blink 做皮了 XD
游客

返回顶部