Фирма «1С» задействует библиотеку WebKit вместо Internet Explorer в клиентских приложениях для операционной системы Windows. Разработчики надеются, что нововведение поможет унифицировать работу прикладных элементов управления и избавиться от ошибок в работе браузера.
WebKit – свободный движок для отображения веб-страниц в основе Safari и Chrome, который работает на iPhone, iPad и Android.
В чем загвоздка
Использующих Internet Explorer элементов в платформе «1С:Предприятия» существует несколько:
- справочная система;
- синтакс-помощник;
- поле формы, имеющее вид ПолеHTMLДокумента;
- планировщик;
- форматированный документ;
- редактор HTML документа.
В Windows их работа основана на COM-объекте движка Internet Explorer. Но разные версии ОС используют разные версии Internet Explorer, что значительно усложняет разработку функционала прикладных и системных элементов.
COM – технологический стандарт от компании Microsoft, предназначенный для создания программного обеспечения на основе взаимодействующих компонентов объекта, каждый из которых может использоваться во многих программах одновременно. СОМ-объекты предоставляют свои сервисы другим объектам и приложениям через стандартизированные интерфейсы.
Вместо СОМ-объектов клиентские приложения в других ОС используют библиотеку WebKit с открытым исходным кодом. Это приводит к тому, что в клиентских приложениях под управлением macOS или Linux объектная модель HTML документа, полученная через свойство поля Документ, может сильно отличаться от аналогичной модели в Windows.
Решение
В «1С» рассказали, что польза от перевода клиентских сервисов и приложений на WebKit заключается в следующем:
- максимально схожее поведение при работе в операционных системах, поддерживаемых «1С:Предприятием», так как используется одна и та же библиотека, хоть и разных версий;
- лучшая производительность в ряде сценариев работы;
- более стабильная и более быстрая работа форматированного документа;
- лучшая поддержка веб-стандартов;
- при переходе на WebKit мы исправили большое количество ошибок, которые невозможно было исправить при использовании Internet Explorer. Открытый исходный код библиотеки WebKit позволяет разработчикам самостоятельно исправлять возникающие проблемы.
Возможность доработать WebKit пригодилась разработчикам, потому что прикладные решения «1С:Предприятия» могут работать под управлением операционной системы Windows XP, а стандартный WebKit ее уже не поддерживает.
Разработчики «1С» используют доработанную библиотеку WebKit, поставлять ее будут вместе с дистрибутивом платформы.
Влияние на существующую функциональность
Разработчики предупреждают, что после перехода на WebKit тип свойства Документ у поля, имеющего вид ПолеHTMLДокумента, изменится с COMОбъект на ВнешнийОбъект. Изменится и объектная модель документа, доступная через это свойство.
При разработке функциональности программистам необходимо учитывать рекомендации для ОС Linux и macOS, чтобы избежать ошибок. В противном случае придется подтверждать, что в разработке задействуются только стандартные элементы DOM модели, которые доступны во всех вариантах работы, и не являются специфичными для конкретного веб-браузера.