Движок Spartan избавили от наследия IE 5.5-10

Spartan — самая важная разработка Microsoft для веба со времён выпуска Internet Explorer в 1995 году. Один из ведущих программистов этого проекта Якоб Росси (Jacob Rossi) впервые раскрыл технические подробности о движке рендеринга Spartan.

Программист признаёт, что IE оставил недобрую память у веб-разработчиков из-за своих багов, хаков и грязных обходных трюков. В то же время следует помнить, что IE привнёс много инноваций, изменив Сеть к лучшему: именно в нём впервые появилась поддержка это CSS, динамических скриптов HTML и DOM, AJAX/XMLHttpRequest, драг-н-дропа, innerHTML, аппаратного ускорения и др.

Тем не менее, пришло время двигаться дальше и оставить Internet Explorer в прошлом вместе со старым движком рендеринга Trident. Для нового браузера Spartan создаётся совершенно новый движок EdgeHTML.dll. Он уже интегрирован в Windows 10 и отделён от движка Trident (MSHTML.dll), на котором десятилетиями работал IE и который чрезмерно загружен наследием IE5.5, IE7, IE8, IE9 и IE10.

004

Spartan будет поддерживать стандарты IE11 как базовую платформу. Разработчики Microsoft наконец-то получили право удалять код — «любимый катарсис каждого программиста», пишет Якоб Росси. В течение нескольких предыдущих месяцев остатки наследия IE удалены из нового движка. Среди прочего, удалены режимы документов, подсистема эмуляции IE8, VBScript, attachEvent, X-UA-Compatible, currentStyle и многое другое.

Якоб Росси считает, что очистка Trident до версии Spartan прошла гораздо более радикально, чем очистка WebKit до версии Blink.

В то же время Microsoft старается обеспечить кроссбраузерную совместимость кода Spartan. На данный момент исправлено более 3000 проблем несовместимости, некоторые из которых берут начало в 90-е годы. Например, исправлена давняя проблема с innerHTML.

Microsoft любит пингвинов

Microsoft любит пингвинов

Идёт работа над внедрением более 40 новых веб-стандартов. Вот некоторые из технологий, поддерживаемых Spartan.

  • Preserve-3d
  • Самая продвинутая поддержка ES6 на сегодняшний день
  • XPath
  • Web Audio
  • Media Capture API
  • Web RTC 1.1 (ORTC)
  • Touch Events
  • Content Security Policy
  • HTTP/2

В то же время Windows 10 сохранит поддержку движка Trident для корректного отображения старых корпоративных сайтов.