2. Что представляет из себя проект Chrome?
chromium.org
Chromium
Chromium OS
Chrome
Chrome OS
3. Принципиальные различия Chromium от Chrome
● Отсутствие синхронизации данных
● Нет автоматических обновлений
● Нет поддержки, не отправляет crashes и нет
возможности сообщить об ошибке
● Есть проблемы с проигрыванием видео и аудио
● Отсутствуют некоторые «супер» функции Chrome
4. Chrome
сторонние сервисы
Свой Chrome = Chromium, напильник, добавляем собственную
реализацию и стараемся не выстрелить себе в ногу.
Chromium
проприетарные библиотеки
=
+
+
5. Challenge #1. План - это наше все!
0. Золотая идея.
1. Платформы
2. Что еще?
○ Синхронизация данных
○ Автоматические обновления
○ Видео & Аудио
○ Chromecast
○ ...
7. 1. Купить их!
Некоторые фичи используют Google APIs:
chromium.org/developers/how-tos/api-keys
2. True путь – сделай сам!
Это совершенно не страшно и мы сделали это!
Два пути получить недостающие компоненты:
8. Что есть на рынке:
1. Доставка обновлений через магазины
2. Готовые платформы
Нужны автообновления?
9. Собственные автообновления
1. Windows клиент разработанный Google - Omaha
https://github.com/google/omaha
2. Самый популярный клиент для MacOS - Sparkle
https://sparkle-project.org/
3. Omaha-server - open-source платформа управления.
https://github.com/Crystalnix/omaha-server
11. Challenge #2. Стек технологий
● C++
● JavaScript / Html / Css
● Python
● Objective-C
● Java
12. С одной стороны:
● Ручное управление
памятью
● Особенности
использования
исключений
● …
C++ — это не так сложно, как выглядит
С другой Google диктует свои
правила
Chromium coding style и Google
C++ Style Guide
И не забываем про unit-tests.
19. Чем Chromium отличается от другого проекта?
● code style guides и best practices
● 600 коммитов в Chromium еженедельно - это вам не шутка!
● Вы теперь часть огромного open-source сообщества ;)
20. Итог
1. Анализируйте и планируйте.
2. С С++ можно жить, а не выживать.
3. Правильно подбирайте инструменты для экономии времени.