Новости свободного ПО

Компания Opera Software начинает новую жизнь, которая теперь будет тесно связана с миром открытого кода. Норвежский производитель популярного браузера Opera намерен использовать свободный движок отображения веб-страниц WebKit, а также развивать его совместно с Google и Apple. Соответственно и для проекта WebKit - это тоже новый этап в развитии, о котором стоит подробно рассказать.


Шаг Opera к открытости

Веб-технологии необходимы практически для всех без исключения пользователей. C Photoshop работают не так уж много людей, MS Office тоже не всем нужен, и даже в игры не все играют. А вот браузер - это программа номер 1. И у многих в системе установлено как минимум два веб-обозревателя.

Самые популярные браузеры - Microsoft Internet Explorer, Google Chrome, Mozilla Firefox, Safari, Opera. Последний из этого списка норвежский браузер имеет, в том числе и у нас в Беларуси, много поклонников, и мы не раз о нём писали в "КВ". По словам главного исполнительного директора компании Ларса Бойлесена, Opera достигла рубежа в 300 миллионов ежемесячных пользователей во всём мире, включая мобильные устройства, телевизоры и компьютеры.

Но главной новостью является то, что в Opera Software приняли решение использовать в дальнейших версиях своих продуктов движок для отображения веб-страниц WebKit и JavaScript-движок V8. Оба этих движка развиваются на принципах открытого кода, и поэтому норвежская компания намерена не просто использовать эти свободные компоненты, как это делают многие, но и принять участие в их разработке. В качестве зачина в кодовую базу WebKit со стороны инженеров Opera Software уже отправлена первая порция патчей, реализующих CSS-свойство multicol для отображения контента в несколько колонок.

Первой "Оперой" на новом движке будет мобильная версия Opera Ice, предназначенной для использования на смартфонах и планшетах на базе платформ Android и iOS. "Ледяная Опера" будет показана на выставке Mobile World Congress в этом месяце. А пока имеется только демонстрационный видеоролик этого мобильного обозревателя, снятый на внутреннем совещании компании, и который Opera Software всячески пытается удалить с YouTube.

Именно мобильная версия, во-первых, и раскрывает главный мотив перехода Opera на WebKit. В норвежской компании, конечно же, испытывают жгучее желание попасть на платформу iOS для "айфонов" и "айпэдов", в которой ограничивается использование сторонних браузерных движков, но предоставляется API для использования WebKit. А попасть на "айфоны" сейчас все хотят, даже Mozilla, что также объясняет, почему был выбран именно WebKit, а не, например, свободный движок Mozilla Gecko.

Во-вторых, нужно отметить и качество движка WebKit. Вряд ли технический директор Opera Software Хокон Виум Ли лукавит, когда отмечает большую производительность и высокую поддержку стандартов в этом движке для рендеринга HTML-страниц.

В-третьих, использование уже готового WebKit и участие в его совершенствовании позволит компании оптимизировать свои ресурсы по развитию собственного браузера. Вместо того чтобы тратить все свои силы на повторение того, что уже реализовано в WebKit, инженеры компании могут сфокусироваться на изобретении чего-то нового.

И, в-четвёртых, компания Opera Softwera является давней сторонницей открытости. Раньше это выражалось в её активном участии в развитии открытых веб-стандартов и их практической поддержке в своих продуктах. Теперь компания будет также принимать участие и в поддержке свободной кодовой базы по реализации этих стандартов. Так что шаг Opera Softwera в сторону WebKit - вполне закономерный и логичный.

С другой стороны шаг в сторону свободных компонентов Opera Software делает не до конца. Компания не намерена открывать код своих конечных продуктов, так как открытые лицензии WebKit не обязывают это делать. То есть, интерфейс браузера и некоторые другие его функциональные части останутся закрытой разработкой компании.

Другими словами Opera становится аналогом браузера Google Chrome, в котором тоже используется WebKit, но при этом также имеются и закрытые компоненты. Можно даже сказать, что Opera становится прямым конкурентом Google Chrome и бросает вызов браузеру "империи добра". Вот только я бы не брался предсказать, удастся ли потеснить "Опере" браузер "Хром".


Ядро для Веба

Само собой переход такого активного игрока веб-индустрии на сторону Webkit является и новым этапом жизненного цикла этого движка рендеринга веб-страниц. До этого момента было три важных этапа в развития данного проекта.

Первоначально, до 2000 года, проект развивался в рамках рабочего окружения KDE. Этот свободный движок назывался KHTML и использовался в Konqueror - штатном браузере графической рабочей среды KDE.

В 2001-м году на KHTML обратил глава Apple Стив Джобс, и на основе KHTML был создан собственный открытый вариант html-движка для браузера Safari, получивший новое название WebKit. И теперь WebKit - один из основных системных фреймворков, входящих в состав Mac OS X и iOS.

Третий этап в развитии Webkit - это подключение к его разработке интернет-гиганта Google. C 2008-го года Webkit становится основой для браузеров Chrome/Chromium, а также основой для веб-ориентированной операционной системы Chrome OS.

С тех пор Webkit стал очень популярной библиотекой рендеринга HTML-контента, которая используется на многих популярных платформах - в том числе, и мобильных. В качестве разделяемой библиотеки он входит в такие фреймворки для разработки программ, как Qt и Gtk+. Последние, например, дают возможность увидеть Webkit в чистом виде и на его основе сделать своими руками свой браузер.

Самый простой пример такого браузера "своими руками" можно создать, установив в систему PyQt - расширения языка Python для фреймворка Qt, куда входят и библиотеки Webkit. После чего, чтобы получить свой собственный минималистичный браузер, достаточно выполнить в консоли Python следующий нехитрый набор команд:

import sys
from PyQt4 import QtGui,QtCore,QtWebKit,QtScript
app=QtGui.QApplication(sys.argv)
web=QtWebKit.QWebView()
web.setGeometry(100,50,800,480)
web.setWindowTitle('MyBrowser')
web.load(QtCore.QUrl('http://www.kv.by'))
web.show()

Конечно же, современные браузеры - это не просто программы для просмотра HTML-страниц. Они обеспечивают гораздо больше возможностей и комфорта для пользователя - начиная с удобства адресной строки и заканчивая эффективной работой с мультимедиа-траффиком. Но, тем не менее, движок рендеринга HTML - это по-прежнему функциональное ядро любого веб-обозревателя.

В этом отношении после перехода Opera Software в стан WebKit можно сказать, что WebKit становится для браузеров чем-то вроде ядра Linux для дистрибутивов. Safari, Chromium/Chrome, Opera, а также множество других менее популярных обозревателей - Яндекс.Браузер, Epiphany, Arora, Dolphin и другие - все эти браузеры используют единое общее ядро WebKit.


Тёмная сторона WebKit

Правда, следует сказать и об обратной стороне такой популярности "Вебкита". Так, например, в Microsoft считают, что WebKit повторяет опыт IE6 и разрушает идею web-стандартов. Теперь по иронии судьбы уже рэдмондский гигант столкнулся с проблемами совместимости с web-приложениями, использующими нестандартные web-технологии, которые включены в WebKit.

Так как в настоящее время WebKit используется на 90% всех мобильных устройств, то часть разработчиков мобильных сайтов и web-приложений не особо заботятся о совместимости с другими мобильными веб-обозревателями. Они используют в своих web-приложениях экспериментальные возможности с префиксом -webkit-, хотя эти возможности могут быть ещё не стандартизированы.

Такая ситуация называется проблемой вендорных префиксов и не относится напрямую к WebKit, но разработчики браузеров вынуждены эту проблему учитывать. Например, в феврале 2012 года состоялось специальное заседание консорциума W3C, на котором Mozilla, Opera и Microsoft обсуждали внедрение префиксов -webkit- в не-Webkit-браузеры.

Чуть позже в Opera попытались внедрить поддержку некоторых CSS3-свойств Webkit. Но потом, видимо, было решено, что проще совсем перейти на WebKit, чем бороться с его префиксами.


Открытие Presto

Неудивительно, что часть любителей "Оперы", не желающие тотальной диктатуры Webkit-браузеров, хотели бы продолжения развития Opera на основе старого движка Presto. Естественно, такое может быть возможно только на принципах "just for fans", и при условии, что исходный код Presto будет опубликован.

И такая ситуация вполне реальна. Главный инженер компании Хокон Виум Ли в рассылке разработчиков WebKit обмолвился о возможном открытии Presto.

В ответ среди пользователей "Оперы", в первую очередь русскоязычных, возникла идея подписать петицию о передаче исходного кода Presto сообществу, вплоть до возможности выплатить выкуп Opera Software. И на текущий момент количество подписавших петицию приближается к двум тысячам.

Михаил АСТАПЧИК

Версия для печатиВерсия для печати

Рубрики: 

  • 1
  • 2
  • 3
  • 4
  • 5
Всего голосов: 0
Заметили ошибку? Выделите ее мышкой и нажмите Ctrl+Enter!