欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

微软Edge浏览器的幕后故事 放弃已使用20年的IE

程序员文章站 2023-10-23 09:10:43
微软Edge浏览器的幕后故事 放弃已使用20年的IE...

        相信已经有不少人迫不及待的安装了windows 10,至少我的同事连夜安装了这一微软成为革命性的操作系统,与之一起面对用户的,还有微软全新的浏览器edge,他到底好不好用呢?ie浏览器今年满20岁了,但微软不仅不会庆祝它的生日,还会把它从windows桌面上踢开,用新的web浏览器microsoft edge取而代之。

       ie并没有被人道毁灭,也不会从7月29日发布的windows 10中消失。因为一些老旧网站使用的过时技术可能是edge不支持的,这时你还是可以用ie来打开它们。那种感觉,就像你拿一件衬衫没有别的办法,只好熨烫它的时候,你从柜子里拿出熨衣板差不多。

微软Edge浏览器的幕后故事 放弃已使用20年的IE

       微软高管解释edge这个名字时,说它表示“处在现代网络标准和能力的前沿”,并且试图推进边界。但你也可以这样想:它是微软对未来压下的一笔赌注,微软无法对之掉以轻心。

       “对于我们应该把这个浏览器带往什么方向,公司内部进行过很多良性的辩论,”微软项目管理主管德鲁?德布鲁因(drew debruyne)在windows 10推出的数周之前说。“对于ie浏览器的下一个版本我们应该做什么?windows 10的推出是个分水岭,我们应该利用这个机会,为浏览器的未来奠定一个新的基础吗?”

微软Edge浏览器的幕后故事 放弃已使用20年的IE

       不遭人待见的ie。

       看到ie离去,可能没有多少人会感到伤心。尽管它战胜网景,在1995至2004年间高歌猛进,但是几乎没有人为它欢呼喝彩。微软将ie捆绑在windows操作系统里,使其获得了市场支配地位,同时也让它成为了网络上最遭人白眼的浏览器。最终,在司法部打了一场具有里程碑意义的官司之后,微软不得不解除了这种捆绑。

       那时人们不喜欢ie还有一些其他原因,比如微软坚持使用自己的html表单,其性能常常令人抓狂。

       到2010年,微软对这些批评做出了回应(当然谷歌(微博)chrome浏览器的崛起也给它带来了一些压力),推出了一个完全重建的ie 9,它的性能得到了大幅改善,但到了那个时候,也没有多少人真的在乎它改不改善了。

       浏览器团队知道他们必须改变这种状况,而windows 10发布的“分水岭”像是一个非常合适的时机。在大约一年半前,浏览器团队开始开展行动,当时他们获得了包括微软ceo萨蒂亚?纳德拉(satya nadella)在内的公司最高领导层的首肯。德布鲁因没有透露纳德拉是否一开始就同意这个计划;不过纳德拉曾公开表示过,作为一家公司,微软需要承担更大的风险,并尝试更多的东西。

微软Edge浏览器的幕后故事 放弃已使用20年的IE

       与过去决裂

       微软edge以前的代号是“斯巴达项目”(project spartan),spartan这个词有“简朴、清苦”的意思,用它来描述edge给人的感觉非常形象。edge是微软迄今制作的最简约、简朴的浏览器。图标很少,菜单文本也非常稀简,设计低调得令人难以置信(当然你可以改变整体色彩)。但是在其背后,却有着非常有趣的故事。

       在2014年时,有报道称,ie从4.0版本开始使用的渲染引擎trident将进行重大改变,用于未来的ie 12中。这个传言说对了一半。

       微软edge使用了一个新的渲染引擎,它带有trident属性。“我们从老的渲染引擎trident,也就是mshtml开始,创建了分支代码,削减了很多(事实上,我认为几乎是所有)遗留技术和遗留行为——这些遗留技术和遗留行为定义了ie浏览器,把它与其他现代浏览器分开,”德布鲁因解释说。

       他们与过去决裂,并引入“edge html”,使得edge可能成为微软这些年来最快、最轻便的浏览器。德布鲁因告诉我,从用户反馈以及某些基准测试的早期结果来看,edge浏览器和基于blink的chrome(blink也是开放标准webkit的一个代码分支)一样快,甚至可能更快。“我们在性能的很多方面都表现出了优势,因为我们可以把很多很多的ie遗留技术留在ie浏览器里,”他说。

       从另一方面来看,与过去决裂势必导致一些网站不能完整加载。微软在edge中放弃的技术包括active x,一个用来渲染组件和对象的软件框架。“虽然它仍然是一个非常重要的技术还是——web上有很多应用程序仍然要依赖它——但在概念上说,它真的不适合通用windows平台了,”德布鲁因说。

       而那就是ie浏览器的用武之地了。目前ie被放在了“附件”下面。当一个网站需要使用ie浏览器打开,edge会让你知道,为你提供两个选择,一是继续在edge中加载它,但知情它的某些部分可能不会正常运行,二是在ie中打开它。

       “大多数开发者在开发web应用程序的时候,脑海里都希望它是可以跨浏览器、跨设备运行的。如果你也有此想法,那么active x很可能就不是你会选用的技术。因此,从某种意义上说,我们只不过是认清了现实,”德布鲁因说。

       一个风险

       尽管微软edge与trident渊源很深,但它的确是一个全新的web浏览器,这意味着一切几乎都是从零开始打造的。因此在7月29日edge推出的时候,有一些东西仍然没有准备好,其中最明显的就是对扩展程序的支持。

       在今年6月的微软build大会上,该公司展示了扩展程序在edge上的运行,所以工作显然是在进行中。微软已经承诺会来2015年底之前弄好扩展,但对一些用户来说,在edge推出之际不能使用它显然很让人烦恼。

       “我们知道这很重要,特别是对那些非常喜欢浏览器的用户来说。使用扩展的浏览器用户数量相对较少,但对于他们而言,扩展程序就是必不可少之物。”德布鲁因说。

       安全性的扩展程序呢?有些人非常喜欢用诺顿网络安全应用扩展,他们可能会担心edge中没有第三方保护。微软倒并不认为这是一个安全风险,主要因为安全保护程序已经内置到windows 10中,因此也能保护到edge.win 10和edge都处在smartscreen和windows defender的保护之下。

       终结扩展方面的麻烦

       每三个月,我就去一个邻居家帮她清理系统。她使用ie和chrome这两种浏览器,(当一个不好用时,她就用另外一个),通常我去清理系统时,两个浏览器都处在勉强能用的状态,我总是发现许多她并不需要的把系统拖慢了。她通常不知道其中一半的软件和扩展功能是怎么来的。麻烦往往始于扩展(和浏览器助手)。而微软edge可能可以终结这种麻烦。

       当今年秋天,用户可以在微软edge上使用扩展程序的时候,它们将会大不相同。首先,universal windows platform不再允许安装钩到windows本身的二进制钩子扩展程序。贝尔菲奥里表示,微软创建ie浏览器的时候,允许安装这样的扩展似乎是一个不错的主意。而现在,有很多扩展可以让第三方垃圾钩到你的系统,而且恶意软件也是个持续性的威胁。就连微软自己也在这样做:skype扩展在网页中查找电话号码,并突出显示它,方便你点击并拨打电话。

       扩展拖慢了浏览器——无论这些扩展是好的、坏的,还是极为危险的。

       贝尔菲奥里解释说,扩展程序将无法“以不可控的方式钩到edge里面。你永远都可以卸载它们。它们真的能卸载掉。而目前的ie浏览器就并非是这样。”这也将让第三方公司、服务和恶意软件无法隐藏在代码中。

       用户体验

       这一切都合情合理。微软愿意放弃遗留应用,取而代之以更精简、更安全的浏览器体验,这是好事。然而,即使人们不介意微软edge目前缺乏扩展支持,真正的考验却在于,它作一个关键浏览器用起来的体验如何。

       有趣的是,微软edge将在推出时支持adobeflash(adobe flash经常会拖慢速度),尽管它采用的是一个已经为edge做了优化的特殊版本。windows update将遵循从windows 8时开启的传统,为系统处理所有的flash更新工作。

       微软自己的研究显示,计算机用户花费在web浏览器上的时间为70%.他们会喜欢edge的简朴设计吗?“我们的意图不是让它显得光秃秃的,而是对内容加以强调。”贝尔菲奥里说。

       把地址栏放在一个不寻常的位置上如何?虽然微软曾经有过取消地址栏的想法,但edge团队最终还是决定保留了它,不过放在了新的位置上:当你打开一个新的标签页时,它差不多位于屏幕中间。对于某些用户来说,这可能看上去很眼熟。

       edge浏览器的地址栏位置有点chrome的风格,而且功能也很像chrome浏览器的多功能框:键入你想要的东西(它支持自然语言查询,这多亏了必应),edge就会把它当作搜索来对待——但如果你输入一个url,它就会带你到你所需的站点。一旦你到达目的地或获得了结果,地址栏会弹到更自然的位置,即页面的顶部。德布鲁因说,对于这方面与chrome之间的相似性,微软并没有收到来自谷歌的任何说法。

       这就是微软edge的感觉:有现代、清新的外观,令人感到熟悉的设计和功能。你会看到拖拽标签、多重窗口、收藏夹和收藏夹标签。但是,它也是windows的一个组成部分。edge也许是自从ie 4之后,微软推出的所有浏览器中windows集成度最高的一个。

       微软edge集成了cortana数字助理,在cortana认为可以提供帮助的时候,就会弹出信息。它可以回答诸如“一夸脱是几品脱”这样的问题,还会对搜索结果做出反应。例如,如果你搜索本地餐馆,它就会提供额外的信息,比如菜单、路线和评级等。

       “我们从餐馆这个类别入手,为你提供cortana服务。但是,我们的目的是随着时间的推移,把这个功能延伸到其他类别上。我们希望你在浏览网页的时候,cortana能以一种雅致的、有用的方式为你提供帮助。”德布鲁因解释说。

       征途

       如果微软的设想实现,这个浏览器会给人精干、简单、灵巧的感觉,它有利于内容的展示,又不会让人感觉干瘪。某些情况下,它为了展示内容,会牺牲一些其他东西。

       其中一个新功能称为阅读视图(reading view),它会去除网页上一切其他东西,只留下关键文本和图片。不过这个功能也不是所有的网站都一视同仁。“我们根据一些客户端代码和必应开展的一些分析,去找出哪些网站和网页是不错的候选者,然后我们点亮这个按钮,”德布鲁因说。网站也可以选择阻止阅读视图功能,以便仍能够显示广告,来支撑网站的业务。

       我注意到了这个功能的一个关键细节:它的背景颜色微微泛黄,就像是书页。因此我对浏览器的设计过程有了些好奇。我问德布鲁因,与最初的概念相比,微软edge的设计有多大的改变。

       新的网站注释、评论和共享工具是个新概念。“在我们摸清它会有多大的用处,以及它将如何与onenote协调的过程中,它经历了很大的改变。”他说。

       在无意中突显了的微软edge的一个潜在绊脚石。web note拥有一个社交分享功能,但只有当社交平台拥有“分享合同”时,这个这个功能。“分享合同”本质上是对微软自身应用(比如edge)的应用内支持。twitter等社交平台公司,以前开发过windows 8应用(可以以磁贴形式出现在windows design中),但是,windows 10已经把windows design归并到开始菜单里面去了,这些社交平台为什么还要费力去开发一个windows 10应用呢?(它倒是会出现在平板模式下,但我好奇有多少人会使用平板模式。)

       但是德布鲁因对twitter推出windows 10应用很有信心,贝尔菲奥里也是如此。

       windows 10放弃了windows 8上最激进的设计和用例模型,让用户几乎忽略了磁贴和windows design,而是回归到他们更熟悉的台式机开始菜单上。微软edge无疑是windows 10中最激进的设计元素。但它是否也会是最成功的设计元素,这还有待观察。

       如果你不喜欢今天的edge,也许你会喜欢几周后的它,因为微软edge不会“完成”。这是windows 10的总体开发理念,贝尔菲奥里说,“如果你问facebook,它完成了吗?,它会说自己是完整的,但没有完成。”这是什么意思?“贝尔菲奥里解释说:”就是说我们要持续添加一些好的功能进去。“