The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Оценка движков Webkit и Mozilla с точки зрения их интеграции в GNOME

05.03.2009 14:43

Один из разработчиков GNOME провел анализ движков Webkit и Mozilla Gecko с точки зрения их пригодности для интеграции в GNOME. Сравниваются не только возможности движков, но плюсы и минусы для разработчиков, особенности поддержки кода и лицензионной политики. Mozilla характеризуется как более зрелый движок, а Webkit как пытающийся найти свое место на рынке.

Заметка написана на основе опыта по интеграции Webkit в GNOME и разработке библиотеки webkit-gtk. В настоящее время в GNOME используется движок Mozilla (epiphany, yelp, devhelp), но в GNOME 2.26 планировалось реализовать дополнительную поддержку WebKit, работы оказалось больше чем ожидалось и реализацию перенесли на релиз GNOME 2.28.

Из достоинств WebKit можно отметить качественный API и готовый GObject биндинг, завязанность на близкие к Gnome библиотеки (Cairo, Pango, libsoup и GStreamer), хорошую документацию к коду. С другой стороны развитие кода WebKit в большей мере контролируется коммерческими вендорами (Apple и Google), а создание GNOME-бэкенда потребовало написания значительного объема кода.

Движок Gecko более абстрактен, имеет более широкое сообщество независимых разработчиков не связанных с интересами коммерческих компаний (но Mozilla Foundation держит проект в жестких рамках), лучше совместим с web сайтами (его учитывают больше web-мастеров). Проблемы Gecko - негарантированность сохранения совместимости API в будущих релизах, содержание дополнительного кода, связанного с парсингом XUL (XML User Interface Language).

По возможностям и производительности движки очень близки. Код Gecko и WebKit написан на C++, Mozilla использует систему сборки и контроля изменений на основе autotools и Mercurial, а webkit - autotools/XCode и Subversion. Патчи в оба проекта принимаются только после одобрения сторонним рецензентом.

  1. Главная ссылка к новости (http://blogs.gnome.org/otte/20...)
  2. OpenNews: В web-браузер Epiphany добавлены средства разработки дополнений на JavaScript
  3. OpenNews: GNOME и Mozilla объявили о партнерстве
  4. OpenNews: web-браузер Epiphany будет использовать WebKit по умолчанию
  5. OpenNews: Обзор движков Gecko и WebKit
  6. OpenNews: Создание десктоп приложений GNOME на языке JavaScript. Выход jQuery 1.3
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/20615-gnome
Ключевые слова: gnome, webkit, mozilla
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (36) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 15:11, 05/03/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    а ведь webkit в epiphany ах как давно обещали
     
     
  • 2.2, Anton (??), 15:25, 05/03/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >а ведь webkit в epiphany ах как давно обещали

    кто хотел давно уже попробовал
    остальные только ахают

     
     
  • 3.3, Аноним (-), 15:44, 05/03/2009 [^] [^^] [^^^] [ответить]  
  • +/
    и толку то??
    гуглопочта не работает!
     
  • 3.4, Аноним (-), 15:48, 05/03/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Вообще-то Epiphany на webkit уже давно имеется (в ubuntu 8.10 это пакет epiphany-webkit)
     
     
  • 4.6, amdlintuxos (?), 16:08, 05/03/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >Вообще-то Epiphany на webkit уже давно имеется (в ubuntu 8.10 это пакет
    >epiphany-webkit)

    в ubuntu 8.10 epiphany-webkit нету,етот пакет собран вроде с движком геkко или ссылается на него

     
     
  • 5.30, Аноним (-), 09:28, 06/03/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Как это нету? http://packages.ubuntu.com/intrepid/epiphany-webkit
     
  • 5.34, vitek (??), 11:18, 06/03/2009 [^] [^^] [^^^] [ответить]  
  • +/
    $ aptitude show epiphany-webkit
    Пакет: epiphany-webkit
    Новый: да
    Состояние: установлен
    Автоматически установлен: нет
    Версия: 2.24.1-0ubuntu1
    Приоритет: необязательный
    Раздел: universe/gnome
    Сопровождающий: Ubuntu Desktop Team <ubuntu-desktop@lists.ubuntu.com>
    Размер в распакованном виде: 938k
    Зависимости: epiphany-browser-data (>= 2.24), epiphany-browser-data (< 2.25), ...
    Сайт: http://www.gnome.org/projects/epiphany/
    Tags: filetransfer::http, implemented-in::c, interface::x11, protocol::http, role::program, suite::gnome, uitoolkit::gtk, use::browsing, web::browser, works-with::text, works-with-format::html, x11::application
     

  • 1.7, Аноним (7), 16:19, 05/03/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Вэбкит какой-то глючный движок. Много раз было замечено. Вводишь текст в форму - а возможность редактирования пропадает.
     
     
  • 2.11, ZANSWER (??), 17:09, 05/03/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >Вэбкит какой-то глючный движок. Много раз было замечено. Вводишь текст в форму
    >- а возможность редактирования пропадает.

    Пользуйтесь нормальными браузерами и нормальными ОС-ями, а не всякими студенческими поделками и недобраузерами, в Mac OS X и Windows, Safari прекрасно работает, ещё не видел не одного сайта на котором бы были проблемы с WebKit-ом.

     
     
  • 3.13, Аноним (7), 17:54, 05/03/2009 [^] [^^] [^^^] [ответить]  
  • +/
    khtml? O_o
     
  • 3.16, vitek (??), 18:40, 05/03/2009 [^] [^^] [^^^] [ответить]  
  • +/
    а как же солярка? ;-)
     
     
  • 4.26, Аноним (-), 05:42, 06/03/2009 [^] [^^] [^^^] [ответить]  
  • +/
    vitek, поймал...:-D Ну ладно, на самом деле, WebKit работает хорошо, если кто знает не правильные сайты, то кидайте ссылки.
     
     
  • 5.32, vitek (??), 11:06, 06/03/2009 [^] [^^] [^^^] [ответить]  
  • +/
    да и геко тоже не плох... а после того, как я поставил плагин noscript - абсолютно доволен и на другие браузеры просто забил (знаю, что не прав. интересоваться всё-равно нужно, но..)
     
  • 3.21, Аноним (7), 22:03, 05/03/2009 [^] [^^] [^^^] [ответить]  
  • +/
    пользователь альтернативных систем? o_o здесь? O_O
     

  • 1.8, srgaz (?), 16:41, 05/03/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >Вэбкит какой-то глючный движок.

    Safari работает отлично.

     
  • 1.10, srgaz (?), 16:57, 05/03/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Токо заметил..

    >пытающийся найти свое место на рынке.

    Рынок этo; продажа,обмен,торговля. Что будут продавать?

     
     
  • 2.12, Аноним (7), 17:12, 05/03/2009 [^] [^^] [^^^] [ответить]  
  • +/
    В оригинале именно market, а сцылка ведёт на статью под названием "Usage share of web browsers": http://en.wikipedia.org/wiki/Usage_share_of_web_browsers

    Так чта переводчик перевёл, как афтар написал.

    Имхо, правильнее таки второй вариант, т.к. браузеры это не market, скорее экосистема для market, базис тскзть :-)

     
     
  • 3.14, Аноним (7), 17:59, 05/03/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Интеграция бразузерных движков в gnome - от одной этой мысли тошнит. Они идут прямиком по пути microsoft c их Active Desktop-ом, который к слову сказать откровенно провальный проект, не используемый подавляющим большинством пользователей.  

    Браузер - выбирают пользователи, тут мнение разработчиков gnome никто спрашивать не будет. web-Виджеты - уже есть куча готовых движков, к томуже это не всегда и не для всех удобно. Зачем мне захламлять рабочий стол и тратить лишние системные ресурсы? Куда удобней открыть в отдельном виртуальном рабочем столе средства для мониторинга например.
    Фигней люди занимаются imho. Раз виджеты появлись в mac os и vista и kde значит этот велосипед обязательно еще и в gnome запихнуть.

    Философия unix - одна утилита для одной задачи. В данном случае эта философия идет по боку. Лучше бы виджетами занимался отдельный проект.
    Лучше бы разработчики Gnome расширяли возможности графических инструментов для настройки различных параметров, и уменьшали их количество. Framework написали какой нибудь для работы с системными ресурсами что ли.
    Их главная задача оптимизировать продукт что бы он был менее ресурсоемким - и вместе с тем удобным для пользователя.

    Вобще слижком в последнее время gnome становится windows-like. Лично меня это раздражает.

     
     
  • 4.15, arachnid (ok), 18:37, 05/03/2009 [^] [^^] [^^^] [ответить]  
  • +/
    берешь - и разрабатываешь. не нравиться - не пользуешься. все. все остальное есть пустое сотрясание воздусей
     
  • 4.17, pilpilon (?), 20:33, 05/03/2009 [^] [^^] [^^^] [ответить]  
  • +/
    движки в DE нужны для того, чтобы приложения могли показывать размеченный текст.
    как то например, его же  хелп, или проста какой либо мессаж с болдом подчеркиванием и разноцветный.
     
  • 4.18, Necropolis (?), 20:44, 05/03/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >Философия unix - одна утилита для одной задачи.

    Это философия юникс, !НЕ линукс. И она давно уже устарела! Большинство "утилит" на сегодняшний день выполняют больше одной задачи.

     
     
  • 5.23, Аноним (7), 22:06, 05/03/2009 [^] [^^] [^^^] [ответить]  
  • +/
    кде ее поддерживает.
     
  • 4.25, iZEN (ok), 22:58, 05/03/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >Интеграция бразузерных движков в gnome - от одной этой мысли тошнит. Они идут прямиком по пути microsoft c их Active Desktop-ом,
    >Браузер - выбирают пользователи, тут мнение разработчиков gnome никто спрашивать не будет.
    >Философия unix - одна утилита для одной задачи. В данном случае эта философия идет по боку.
    >Лучше бы разработчики Gnome расширяли возможности графических инструментов для настройки различных параметров, и уменьшали их количество. Framework написали какой нибудь для работы с системными ресурсами что ли.

    Набор несвязанных противоречащих друг другу мыслей.
    Ну и что ты хотел этим сказать?
    Учись правильно формулировать и высказывать свою собственную точку зрения.

    Я скажу так
    В интегрированной графической среде (DE) движок должен быть ОДИН — тот, который выберет пользователь при установке, а не разноцветный набор: WebKit, Firefox3, Xulrunner и Chromium на все случаи жизни.


     
     
  • 5.33, vitek (??), 11:15, 06/03/2009 [^] [^^] [^^^] [ответить]  
  • +/
    а если ошибся, передумал и т.д. - то перестанавливай систему?
    где-то я уже это видел.
    нет уж.
    мне и сейчас хорошо... что хочешь ставь, удаляй, пользуйся, не пользуйся...
    т.е. также, как и в жизни:
    не хочешь(не можешь,...) сделать выбор сам, значит этот выбор сделают за тебя.
    и уже не важно кто этот выбор сделает - дистростроители, либо конкретные корпорации...
     
     
  • 6.35, . (?), 11:46, 06/03/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >>В интегрированной графической среде (DE) движок должен быть ОДИН — тот,
    >>который выберет пользователь при установке
    >а если ошибся, передумал и т.д. - то перестанавливай систему

    абсолютно не связанные реплики. бардак и модульность - разные сущности

     
     
  • 7.37, ixrws (?), 13:09, 06/03/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Вот раз уж упомянули про модульность, то упомяните и цену этой модульности. Поддержка нескольких движков, знаете что это? Прежде всего это работа. Вы будете её делать? Тотоже. Мало кто будет делать, так что на практике - это всё таки будет именно "то переустанавливай систему".
     
     
  • 8.38, аноним (?), 13:20, 06/03/2009 [^] [^^] [^^^] [ответить]  
  • +/
    стандартизированный ABI API и нет проблем... текст свёрнут, показать
     
     
  • 9.39, ixrws (?), 13:45, 06/03/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Разные подходы в понимании правильного не позволяют следовать стандартам Одно... текст свёрнут, показать
     
  • 5.36, ixrws (?), 13:06, 06/03/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Ниасилили матчасть? Жаль, но это ваши проблемы.
    firefox3 - это не движок, всего лиш пара сотен килобайт xml + javascript.
    xul-runner - это не движок браузерный, а кросплатформенный набор компонентов для написания приложений на xml + javascript или C++.
    В общем webkit с chromium находятся в одной весовой категории, а xul-runner - в другой. Если вы такой жутко умный, и уже знаете аналог xul-runner, полностью его заменяющий, то приведите пример.
    А вот что касается одного движка на одно DE. Так это вообще забавно, люди очень редко используют именно ОДИН DE. Обычно DE берётся за основу, а множество разных приложений выбирается по удобству и по причине других субъективных воззрений. Это всё же не венда и макось, тут по вашему не будет никогда. Вон полюбуйтесь на kde, их разработчики не взяли хвалёный webkit, а по прежнему пилят khtml. Это называется выбор, нравится вам он или нет.
     
     
  • 6.40, iZEN (ok), 17:35, 06/03/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >[оверквотинг удален]
    >В общем webkit с chromium находятся в одной весовой категории, а xul-runner
    >- в другой. Если вы такой жутко умный, и уже знаете
    >аналог xul-runner, полностью его заменяющий, то приведите пример.
    >А вот что касается одного движка на одно DE. Так это вообще
    >забавно, люди очень редко используют именно ОДИН DE. Обычно DE берётся
    >за основу, а множество разных приложений выбирается по удобству и по
    >причине других субъективных воззрений. Это всё же не венда и макось,
    >тут по вашему не будет никогда. Вон полюбуйтесь на kde, их
    >разработчики не взяли хвалёный webkit, а по прежнему пилят khtml. Это
    >называется выбор, нравится вам он или нет.

    'WITH_GECKO=xulrunner' в моём make.conf для ясности. А могло бы стоять: 'WITH_GECKO=firefox' или 'WITH_GECKO=seamonkey'. И это ещё -- не затрагивая перспективных движков WebKit (webkit-gtk2, qt4-webkit) и KHTML, а только Gecko.
    Согласитесь, в таком понимании Web-движка "как семейства" пропадают всякие сомнения насчёт интеграции с другими приложениями -- Epiphany и Eclipse могут использовать один и тот же "движок" (в этом случае количество поддерживаемых в актуальном состоянии пакетов естественно сокращается), а могут использовать разные движки (ну в этом случае, понятно, -- поддержка зависит от их количества и особенностей сборки конкретного приложения).

    Так вот, зоопарка из Web-движков разной мощности в целостной (интегрированной) системе стараются избегать, чтобы система и среда работы воспринималась пользователем именно как целостная и интегрированная система. По этому пути давно пошли в Microsoft, интегрировав IE4 в оболочку (и судятся из-за этого без конца). А другие всё ещё не понимают преимущества такого подхода.

     
     
  • 7.41, vitek (??), 17:56, 06/03/2009 [^] [^^] [^^^] [ответить]  
  • +/
    и именно поэтому в 7 винде (судя по последней бете) можно будет удалить ие полностью?
    именно поэтому балмер и говорит о том, что они "присматриваются" к вебкит?
    и наверное именно поэтому фф3 отвоевал 30%.

    не путайте зоопарк с естественным отбором... да. так медленнее, но неотвратимее.
    сегодня я пользуюсь фф... а завтра - кто его знает?.. а ведь лет 15 назад пользовался ие.

    а вообще - бесперспективный разговор. опенсоурс нельзя заставить ходить строем. и это здорово.

     

  • 1.19, Ptomaine (?), 21:01, 05/03/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Да почему же, до сих пор, многие воспринимают firefox и Gecko как браузер и приблуда для браузера? Gecko - это целая Web-платформа, а firefox - это только 500 килобайт XUL скрипта использующая возможности движка Gecko.

    Более того, что, на GNOME-е свет клином сошёлся? Вот трагедию устроили...блин. Я люблю WebKit и пользуюсь им. Но вы попробуйте, например, на основе WibKit, создать, так же легко и гибко как на Gecko, полезные веб и не только веб приложения. "Создать ярлык приложения", в Chrome, не катит. Так как? Gecko - это платформа нацеленная на настоящее и будущее, когда легковесные веб приложения будут в порядке вещей. Именно из-за XUL-а так легко можно расширить функционал Firefox. Я считаю, что сравнение, в новости, не совсем корректное.

     
     
  • 2.24, ixrws (?), 22:24, 05/03/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Да, xul-runner это платформа, и gecko в сущности своей это лиш набор XPCOM частей, а не движок браузерный. И это действительно мощьная вещь, тут вы правы. Есть только одна проблема - это не позициорирование xul-runner для сторонних разработчиков. Нет исчерпывающей документации по XPCOM компомонентам, всем я имею ввиду, а не некоторых. Нет различных демопримеров и тд и тп, словом нет того, что демонстрирует именно саму "платформу" а не движок браузера. Фактически получается, что нетскейп, а затем мозилла, создали кросплатформенную систему для внутреннего пользования, а для всех остальных это известно как движок, рендерящий web - gecko, браузер firefox, и почтовик. Нехорошо, учитывая очень неплохую в корне своём затею.
    Остаётся лиш надеяться, что мозилловцы или кто-нибудь другой заинтересованный, когда-нибудь сделает глобальную работу по составлению документации, структурированию, выделению независимых частей и перевариванию xul-runner в действительно платформу, а не движок для браузера, весом в 9ть с лишним мегабайт:) Мне вот ща интересно стало использовать xul-runner как раз по частям, авось имеет смысл попутно и доки писать и примеры:)
     
  • 2.29, . (?), 09:15, 06/03/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >легковесные веб приложения
    >XUL

    окcюморон?

     
     
  • 3.31, ixrws (?), 10:07, 06/03/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Почему же? когда xul уже загружен, то удивительно, но приложения и правда могут быть уже легковесными. Правда не сейчас, кроме трейс манки, нужна серьёзная работа по уменьшению потребления памяти, вот тогда да, будут легковесными.
     
     
  • 4.42, rontos (ok), 16:26, 13/03/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >Почему же? когда xul уже загружен, то удивительно, но приложения и правда
    >могут быть уже легковесными. Правда не сейчас, кроме трейс манки, нужна
    >серьёзная работа по уменьшению потребления памяти, вот тогда да, будут легковесными.
    >

    Ну скажем это требуется только мозиле, опера же скажем так весьма не много потребляет памяти =)

    _______________________
    С уважением Логинов Владимир

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру