写点什么

微软披露了 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:402349
用户头像

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

关注

评论

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

案例研究:亚马逊广告使用 PyTorch 和 Amazon Inferentia 扩展广告处理模型

亚马逊云科技 (Amazon Web Services)

模型 PyTorch

Cloud RedTeam视角下元数据服务攻防实践

火线安全

云原生 云安全

微软云对象存储攻防

火线安全

云原生 云原生应用 云安全攻防 云安全研究

Python 下载的9种方法,Python开发技巧

程序媛可鸥

Python 程序员 面试

Python 实现七大排序算法,面试竟然被这31道Python基础题难倒了

程序媛可鸥

Python 程序员 面试

低代码如何助力化学材料行业数字化升级?

TOBESOFT特碧软件

低代码 数字化转型 MES系统 制造业 TOBESOFT

微博评论高性能高可用架构设计

随欣所遇

架构训练营5期

自从用了这个APP,我的身体状况....

IT蜗壳-Tango

极客时间 IT蜗壳

Python 实现 ZeroMQ 的三种基本工作模式,贼好用的Python学习路线集合

程序媛可鸥

Python 程序员 面试

网络安全 kali Web安全之CSRF攻击

学神来啦

网络安全 CSRF WEB安全 kali kali Linux

欧拉的奇异之旅·共赴开源时代

脑极体

阿里云 OSS对象存储攻防

火线安全

云安全 阿里云;

低调不了!最佳体验尽在 Erda 2.0 版本

尔达Erda

云计算 云原生 设计 发布 界面改版

限时200位免费!网易云信娱乐社交公开课来啦!

网易云信

娱乐社交

python 列表 remove()函数使用详解,最新手淘Python高级面试题及答案

程序媛可鸥

Python 程序员 面试

【模块五】设计微博系统中”微博评论“的高性能高可用计算架构

yhjhero

架构 #架构训练营

腾讯云COS对象存储攻防

火线安全

云原生 云安全 云原生应用

python Excel数据表格转为HTML网页数据表格,阿里快手拼多多等7家大厂Python面试真题

程序媛可鸥

Python 程序员 面试

红黑树的原理以及实现

Linux服务器开发

数据结构 B+树 红黑树 Linux服务器开发 Linux后台开发

使用APICloud平台实现朋友圈功能

YonBuilder低代码开发平台

html5 css3 APP开发 APICloud JavaScrip

python sorted()函数及sort()方法,零基础Python开发

程序媛可鸥

Python 程序员 面试

golang并发控制设计中的“流式模型”

不登山的小鲁

golang

2022年,人工智能和数据发展呈现哪五大趋势?

澳鹏Appen

人工智能 机器学习 深度学习 训练数据

OceanBase 在线体验环境,现已上线!

OceanBase 数据库

oceanbase OceanBase 社区版 在线体验站

《第四期(2021-2022)传统行业云原生技术落地调研报告——金融篇》重磅发布!

York

容器 DevOps 云原生 金融科技 金融行业

使用 CachedNetworkImage 实现图片离线缓存

岛上码农

flutter ios Android开发 移动端开发 3月月更

python pandas loc布尔索引(指定条件下的索引),你花了多久弄明白架构设计

程序媛可鸥

Python 程序员 面试

OpenHarmony设备开发环境搭建/源码获取/编译/烧录

拓维信息

OpenHarmony 烧录

条码WMS系统与ERP接口实现方法

源字节1号

后端开发 WMS系统 ERP接口

2021物联之星评选结果重磅出炉!AIoT产业核心玩家已经浮现

dgiot

关于帮助中心,你需要知道的一切

小炮

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