Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Использование Chromium Embedded Framework для композиции нативных и Web технологий в построении пользовательского интерфейса

CEE-SECR
October 21, 2017

Использование Chromium Embedded Framework для композиции нативных и Web технологий в построении пользовательского интерфейса

Андрей Малашенко, Аурига, CEE-SECR 2017

В моем докладе слушатели могут почерпнуть нестандартные сценарии использования Web-движка в десктопных приложениях: Off-screen рендеринг, взаимная интеграция JS и С++ кода, создание виртуального сервера без открытия портов, автоматизация пользовательских действий в Web-страницах. Данные сценарии успешно внедрены и несколько лет являются технологической основой продукта, являющегося одним из лидирующих решений на своем рынке.

CEE-SECR

October 21, 2017
Tweet

More Decks by CEE-SECR

Other Decks in Technology

Transcript

  1. 2 5 + Y E A R S O F

    E N G I N E E R I N G L E A D E R S H I P Использование Chromium Embedded Framework для композиции нативных и Web технологий в построении пользовательского интерфейса. Как “выжать” всё из виджета Web-браузера? ОКТЯБРЬ 2017 2 5 + Y E A R S O F E N G I N E E R I N G L E A D E R S H I P
  2. 2 5 + Y E A R S O F

    E N G I N E E R I N G L E A D E R S H I P Виджет Web-браузера
  3. 2 5 + Y E A R S O F

    E N G I N E E R I N G L E A D E R S H I P Что такое CEF?
  4. 2 5 + Y E A R S O F

    E N G I N E E R I N G L E A D E R S H I P Роль браузера Необходимые умения разработчика: С++ WinApi HTML JS Сложность: 1 человеко-неделя.
  5. 2 5 + Y E A R S O F

    E N G I N E E R I N G L E A D E R S H I P Роль элемента пользовательского интерфейса Необходимые умения разработчика: С++ WinApi HTML JS Сложность: от 1 человеко-недели.
  6. 2 5 + Y E A R S O F

    E N G I N E E R I N G L E A D E R S H I P Off-Screen Рендер веб-страниц Необходимые умения разработчика: С++ WinApi HTML JS Сложность: от 1 человеко-недели.
  7. 2 5 + Y E A R S O F

    E N G I N E E R I N G L E A D E R S H I P Получение координат Document Object Model Необходимые умения разработчика: С++ WinApi HTML JS Сложность: 1+1 человеко-неделя.
  8. 2 5 + Y E A R S O F

    E N G I N E E R I N G L E A D E R S H I P Безрамочная интеграция виджета Необходимые умения разработчика: С++ WinApi HTML JS Сложность: 1+1 человеко-неделя.
  9. 2 5 + Y E A R S O F

    E N G I N E E R I N G L E A D E R S H I P Поддержка собственных протоколов Необходимые умения разработчика: С++ WinApi HTML JS Сложность: от 1 человеко-недели.
  10. 2 5 + Y E A R S O F

    E N G I N E E R I N G L E A D E R S H I P Интерпретатор JS кода Необходимые умения разработчика: С++ WinApi HTML JS Сложность: от 2 человеко-дней.
  11. 2 5 + Y E A R S O F

    E N G I N E E R I N G L E A D E R S H I P Автоматизация действий пользователя в браузере Необходимые умения разработчика: С++ WinApi HTML JS Сложность: от 1 человеко-недели.
  12. 2 5 + Y E A R S O F

    E N G I N E E R I N G L E A D E R S H I P Почему именно CEF? Обновляется Совместим с WinApi Off-screen рендер W3C совместимость Доступ к DOM Связь JS и С++ Gecko - + ? ? ? ? +- + + - ? ? + - ? + ? + + + - + + + + + + + + +
  13. 2 5 + Y E A R S O F

    E N G I N E E R I N G L E A D E R S H I P Зависимости CEF3
  14. 2 5 + Y E A R S O F

    E N G I N E E R I N G L E A D E R S H I P Архитектура процессов CEF3
  15. 2 5 + Y E A R S O F

    E N G I N E E R I N G L E A D E R S H I P Получение CEF
  16. 2 5 + Y E A R S O F

    E N G I N E E R I N G L E A D E R S H I P Использование CEF с другими языками Delphi (CEF1) – DCEF 1 Delphi (CEF3) – DCEF 3 Go (CEF3) – CEF2go Java (CEF3) – Java Chromium Embedded .NET (CEF1, CEF3) – CefSharp .NET (CEF1) – CefGlue .NET/Mono (CEF3) – Xilium.CefGlue .NET (CEF3) – ChromiumFX Python (CEF1, CEF3) – CEF Python Swift (CEF3) – CEF.swift
  17. 2 5 + Y E A R S O F

    E N G I N E E R I N G L E A D E R S H I P Источники http://en.wikipedia.org/wiki/Chromium_Embedded_Framework https://bitbucket.org/chromiumembedded/cef https://cefbuilds.com/ http://www.magpcss.org/ceforum
  18. 2 5 + Y E A R S O F

    E N G I N E E R I N G L E A D E R S H I P ДОКЛАДЧИК АНДРЕЙ МАЛАШЕНКО Инженер-программист [email protected] •Курский Государственный Университет •Специальность «Математическое обеспечение и администрирование информационных систем» •10 лет опыта в разработке ПО •Разработчик С++
  19. 2 5 + Y E A R S O F

    E N G I N E E R I N G L E A D E R S H I P АУРИГА ОФИС В БОСТОНЕ 400 TradeCenter Ste 5900 Woburn, MA 01801, USA Тел: +1 (866) 645-1119 Факс: + 1 (603) 386-6097 ОФИС В ЕВРОПЕ Ukmergės g. 322, LT- 12106, Vilnius, Lithuania Тел: +370 (5) 203-1571 Факс: +370 (5) 203-1573 [email protected] www.auriga.ru ОФИС В РОССИИ 117587, Россия, г. Москва, Варшавское ш., д. 125, стр. 16А Тел: +7 (495) 713-9900 Факс: +7 (495) 939-0300