50万奖金+官方证书,深圳国际金融科技大赛正式启动,点击报名 了解详情
写点什么

微软披露了 Spartan 中所使用的渲染引擎的细节

  • 2015-03-08
  • 本文字数:1240 字

    阅读完需:约 4 分钟

微软披露了在 Spartan web 浏览器中所使用的新渲染引擎的更多信息,Windows 10 的桌面版本和移动设备版本将预装该浏览器。

Charles Morris 是 Spartan 项目的项目经理主管,他在一篇博客帖子中详细地解释了该项目背后的成因、IE 浏览器的历史以及未来的计划。该项目的成因之一是为了打造一个能够与 Chrome 和 Firefox 竞争的现代化渲染引擎,除此之外,Morris 还提到:“我们需要计划这样一种浏览器,在我们快速地引入现代化的 HTML5 特性的同时,它也能够高度地向后兼容企业客户的需求”。

新的渲染引擎最初是基于现有的 Trident 引擎进行开发的,该引擎中包含了向后兼容达 20 年的遗留代码。在新的代码分支创建之后,微软耗费了几个月的精力,以删除各种不必要的代码,例如文档模式和VBScript 等等,这些特性在精益的、更现代化的引擎中已无用武之地了。但是,为了继续支持那些针对特性的老版本IE 所创建的企业web 应用,新的Spartan 浏览器中依然保留了陈旧的引擎。Spartan 能够“无缝地”在两种渲染引擎之间进行自动切换。

Hacker News 网站上的一篇讨论中,微软的高级 web 平台工程师 Jacob Rossi 表示:“由于 Spartan 中移除了老版本 IE 中遗留的那些冗余部分,因此它的磁盘与内存占用都比 IE 要小”。

自从 Windows Phone 8.1 更新版本推出之后,微软就改变了浏览器的用户代理字符串(user agent),改变后的字符串会让目标网站认为该请求是来自于某些更流行的设备的,例如 iPhone。为了确保 Spartan 中能够获得最好的内容展示效果,新的浏览器也将继续使用这一做法,它的用户代理字符串将被改为:

复制代码
Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko)
Chrome/39.0.2171.71 Safari/537.36 Edge/12.0

请注意:在新的字符串中没有了“Trident”的身影,取而代之的是“Edge/12.0”。

在这篇帖子中,微软表示,他们曾经讨论过是否要使用开源的 WebKit 渲染引擎,但最终还是决定开发一套自己的引擎。Morris 说道:“虽然使用 WebKit 具有某些优势,但经过进一步的调查后,我们还是认为这不是正确的方向,原因主要有两点”。

首先,Web 的原则之一就是让多种独立的、并且能够互操作的 Web 标准的实现共存,我们也认为 Web 不应该朝向单一的方向发展。其次,从整个工程所需的精力方面来看,与使用开源引擎开发全新的浏览器相比,如果我们能够基于自有的引擎进行开发,就能够更快地为客户推出一个专注于互操作性的引擎。

在推特上的一场对话中,用户 @sircmpwn 询问了微软将 Spartan 浏览器的代码开源的可能性。微软对此回应到:“近期没有将代码全部开源的计划,但我们会以别的方式拥抱开放性(例如通过 http://status.modern.ie 网站)”。

IE 从版本 11 开始就设定为自动升级,在 Windows 10 中也会继续沿用这一持续更新的设定。多年以来,由于 IE 的兼容性和“怪癖”所造成的问题一直饱受 web 开发者们的抨击,至于 Spartan 能够平息这些批评的声音,还有待时间的检验。

查看英文原文: Microsoft Shares Details on Spartan Rendering Engine

2015-03-08 08:402690
用户头像

发布了 428 篇内容, 共 198.0 次阅读, 收获喜欢 39 次。

关注

评论

发布
暂无评论
发现更多内容

博睿数据应邀出席第五届双态IT北京用户大会,分享《如何帮助用户构建高级可观测性》

博睿数据

可观测性 AIOPS 智能运维 博睿数据 IT行业

5款超级好用的开发效率工具,建议收藏!

引迈信息

程序员 前端 低代码 开发效率

华为云企业快成长安全技术创新论坛广州站举办在即 都有哪些亮点干货?

说山水

Bartender 4 for Mac(菜单栏应用管理软件) 中文

背包客

macos Mac 软件 mac软件下载 MacBook Pro Bartender

卡奥斯获开放原子开源基金会黄金捐赠人授牌

Openlab_cosmoplat

开放原子全球开源峰会

卡奥斯联合开放原子开源基金会倡议发起“云原生工作委员会”

Openlab_cosmoplat

开源社区 开放原子全球开源峰会

重磅再推 | 基于OpenSearch向量检索版+大模型,搭建对话式搜索

阿里云大数据AI技术

人工智能 搜索引擎 企业号 6 月 PK 榜

软件测试/测试开发丨Pytest测试框架学习笔记

测试人

程序员 软件测试 pytest

连续两年!PingCAP 入选 Gartner 云数据库“客户之声”,获评“卓越表现者”最高分

PingCAP

Tower for Mac:强大的Git客户端

背包客

macos git Tower Mac 软件 mac软件下载

Pycharm配置远程调试

Geek_7ubdnf

三维人脸建模和驱动技术,让数字人快速“活”起来

华为云开发者联盟

人工智能 华为云 数字人 华为云开发者联盟 企业号 6 月 PK 榜

KaiwuDB 数据库高可用方案及落地实现

KaiwuDB

KaiwuDB 数据库高可用

我的多巴胺回来了!双手奉上在rumble上下载视频的最佳秘诀!

frank

MySQL读取的记录和我想象的不一致

华为云开发者联盟

数据库 后端 华为云 华为云开发者联盟 企业号 6 月 PK 榜

清爽快速全面的网址导航(cooltools.top)

Yongqiang

人工智能 AI AIGC ChatGPT

卡奥斯正式加入开放原子开源安全委员会

Openlab_cosmoplat

开源社区 开放原子全球开源峰会

Python和Anaconda的版本对应关系

Geek_7ubdnf

基于阿里云 Serverless 容器服务轻松部署企业级 AI 应用

阿里巴巴云原生

阿里云 Serverless Kubernetes 云原生 ASK

ChatGPT与Web的完美结合:创造一加一大于二的化学反应

加入高科技仿生人

Web 低代码 ChatGPT

NFTScan 与 SPACE ID 达成合作伙伴,支持 .bnb / .arb 域名搜索!

NFT Research

域名 NFT\

麒麟操作系统是什么?和linux的区别是什么?

行云管家

信创 麒麟操作系统

Python的离线安装

Geek_7ubdnf

提升网站速度,选择香港主机的三大理由!

一只扑棱蛾子

香港主机

美团买菜基于 Flink 的实时数仓建设

Apache Flink

大数据 flink 实时计算

Koordinator 最佳实践系列:精细化 CPU 编排

阿里巴巴云原生

阿里云 云原生 Koordinator

体验昇腾Ascend C 编程语言极简易用的算子开发

华为云开发者联盟

人工智能 华为云 昇腾AI 华为云开发者联盟 企业号 6 月 PK 榜

微软披露了Spartan中所使用的渲染引擎的细节_JavaScript_David Iffland_InfoQ精选文章