开发人员赞赏现代浏览器的复杂性

著名的Linux开发人员,Wayland图形协议,Sway用户环境和Aerc电子邮件客户端的合著者,Drew DeVault 分析了现代浏览器必须遵守的W3C规范

在帮助下下载了1217个规范wget并使用该实用程序wc -w(字数)对统计数据进行了修改。事实证明,当前W3C规范的整个目录为1.14亿个字。为了进行比较,C11规范的范围是208,220个单词,而小说《战争与和平》的长度是188,088个单词。

Drew DeVolt得出结论,今天不再可能从头开始开发新的浏览器,因为不可能以这种数量实现对Web标准的支持。

为了比较W3C规范的详细程度,开发人员引用了其他规范和文本的大小

  • 所有IETF RFC(文本格式),8,754个单位:57,716,641个单词
  • POSIX(HTML格式):2017056
  • USB 3.2(PDF):872395
  • UEFI(PDF):659,580
  • C ++ 17(PDF,最新开放草案):576344
  • C11(PDF,最新打开的草案):208,220
  • 英特尔x86 ISA(PDF):2,312,414

即使将所有这些与世界上最长的文学小说列表加在一起,W3C规范仍将超过1200万个字。

德鲁·德沃尔特(Drew DeWolt)提出了我们达到这种状态的原因:“自从Netscape和Internet Explorer之间的第一次浏览器之战以来,Web浏览器就将其功能用作相互竞争的主要手段。他写道:这种无限制范围和功能永续发展的策略是鲁re的,它被允许持续太长时间。 -网络的复杂性简直不雅。创建新的Web浏览器的工作可与Apollo计划或Manhattan项目相媲美。”

也就是说,并非不可能为网络实施安全或正确的支持,而是无法实施总的来说

创建自己的浏览器引擎以与当今的Google或Mozilla竞争是完全愚蠢的事情。制造新浏览器Servo的最新尝试是“部分是重构Firefox代码的孵化器,部分是让无聊的Mozilla工程师尝试修改无用技术的沙箱”(WebVR)。

“这的含义是显而易见的。浏览器是在常规计算机上运行的最昂贵的软件。他们因使用您的所有RAM,获取处理器阵容和I / O,耗尽电池等而臭名昭著。 Drew DeVolt写道,浏览器占了8,000多个已知漏洞。可从官方网站cve.mitre.org获得CVE统计信息总共搜索查询“ firefox”,“ chrome”,“ safari”和“ internet Explorer”。

创造竞争性替代方案已成为不可克服的挑战。因此,浏览器开发人员感到有罪不罚。浏览器不再充当“用户代理”,而是开始充当其创建者的代理:“ Firefox充满了广告,跟踪和必需的插件。 Google使用Chrome浏览器作为工具来有效跟踪您的打开页面历史记录,并将DRM和AMP等有害技术推广到生态系统中。浏览器的双头垄断也只会变得越来越强大,因为微软失去了Edge,而WebKit远远落后于竞争对手。”

当然,浏览器引擎是开源的。不幸的是,即使制作一个可行的叉子也是几乎不可能的任务。事实是,W3C规范的数量平均每年以200个新规范的速度增长。这些是大约四百万个新词。大致来说,每4-6个月大约有一个POSIX。“新团队如何才能在已经出现的惊人数量之外继续追赶呢?-问DeVolt。-浏览器战争已被允许持续太长时间。他们应该在性能和稳定性方面长期关注竞争,而不是新的“功能”。这绝对是荒谬的,它必须停止。”




All Articles