C++ Siberia, 2015

August 28-29 2015
Новосибирск, Россия
View
To favorites

Eric Niebler

Software Engineer at Facebook

Сергей Хомяков

Разработчик at 2ГИС

Константин Крамлих

Разработчик at Яндекс

Борис Муратшин

Разработчик at 2ГИС

Дмитрий Кашицын

Разработчик at HDSoft (Zodiac Interactive)

About event

Topic: IT

Это независимая конференция C++ разработчиков. Организаторы собирают лучших докладчиков из России и Европы на два дня вместе. Конференция ориентирована на опытных разработчиков, никаких вводных лекций, только современный C++, матрёшки и блины!

Audience

  • CIO
  • Тимлидам
  • Разработчикам
  • Студентам технических ВУЗов
Share

Schedule

Show all
 
Get access to all talks
Purchased
In cart
0 ₽
0 ₽
$0
$0
€ 0
€ 0

Eric Niebler

Software Engineer at Facebook

Ranges for the Standard Library at C++ Siberia 2015

Eric Niebler will be giving the opening keynote. He is a freelance software developer, consultant, trainer and author. His specialty is C++ library and application development, with special emphasis on modern C++ techniques, and extra special emphasis on domain-specific languages.

Purchased
In cart
0 ₽
0 ₽
$0
$0
€ 0
€ 0

Александр Фокин

Разработчик at Яндекс

От Concepts к Concepts Lite

Рассказ о том, что такое концепты (concepts) в С++, как они развивались, почему не попали в С++11, и что нас ждет в будущем (Concepts Lite в C++17).

Purchased
In cart
0 ₽
0 ₽
$0
$0
€ 0
€ 0

Сергей Хомяков

Разработчик at 2ГИС

QML\Qt Quick на практике

QML\Qt Quick это превосходный декларативный язык программирования, призванный сильно упростить создание и дальнейшую поддержку пользовательских интерфейсов.В докладе я расскажу что из себя представляет QML, попробуем разобраться в вопросе “Где и как уместно использовать QML\Qt Quick” и приведу краткий обзор полезных инструментов для разработки QML\Qt Quick приложений.

Purchased
In cart
0 ₽
0 ₽
$0
$0
€ 0
€ 0

Константин Крамлих

Разработчик at Яндекс

Аскетичная разработка браузера

C++ богат различными инструментами, при разработке на C++ используется множество различных подходов. Но можно ли пользоваться ими во всех случаях или бывают ситуации, когда стоит воздержаться или ограничить их использование?
В докладе пойдет речь о том, какие существуют ограничения при разработке браузера и откуда они взялись. Почему мы живем без исключений или RTTI, к чему это ведет. Как мы используем стандартную библиотеку и сторонние модули.

Purchased
In cart
0 ₽
0 ₽
$0
$0
€ 0
€ 0

Борис Муратшин

Разработчик at 2ГИС

Исключения в С++, как это работает

Мало кто отчетливо представляет, как работают исключения в С++.
Автор пытается восполнить этот пробел, заодно пытаясь выяснить, почему всё устроено так как оно устроено и нельзя ли там чего-нибудь улучшить.

1) Две основные проблемы – как обустроить раскрутку стека
и как осуществить передачу управления при возникновении исключения
2) Раскрутка стека – GCC LDSA, MSVC32, MSVC64
3) Передача управления – SJLJ, DW2, MSVC
4) Раскручиваем стек своими руками

Purchased
In cart
0 ₽
0 ₽
$0
$0
€ 0
€ 0

Дмитрий Кашицын

Разработчик at HDSoft (Zodiac Interactive)

Дракон в мешке: от LLVM к C++ и проблемам неопределенного поведения

В этом докладе Дмитрий кратко рассказывает о таком звере, как LLVM, о котором много кто слышал, но немногие щупали.
Что такое компилятор на самом деле? Как происходит компиляция программы, как работают оптимизации и, наконец, откуда берется неопределенное поведение в детерменированных программах на C++?

Purchased
In cart
0 ₽
0 ₽
$0
$0
€ 0
€ 0

Антон Бикинеев

Разработчик at Лаборатория Касперского

HPX: C++11 runtime система для параллельных и распределённых вычислений

Краткий обзор HPX: runtimme системы для параллельных и распределённых вычислений.

Purchased
In cart
0 ₽
0 ₽
$0
$0
€ 0
€ 0

Антон Щербаков

C++ senior software developer at Лаборатория Касперского

DI в C++ тонкости и нюансы

В докладе рассказывается об особенностях подхода к dependence injections в C++. Посмотрим какие подходы, в чем их плюсы и минусы. Также затрагивается тема Inversion of Control контейнеров.

Purchased
In cart
0 ₽
0 ₽
$0
$0
€ 0
€ 0

Денис Гладкий

Разработчик at 2ГИС

Визуализация автомобильных маршрутов

Доклад посвящён алгоритмам и структурам данных рендеринга автомобильных маршрутов в ГИС приложениях. Так же будут затронуты особенности и проблемы, возникающие при написании единого кода визуализации для нескольких программно-аппаратных платформ (Android, Windows Phone, iOS, Windows Desktop, Linux Desktop).

Purchased
In cart
0 ₽
0 ₽
$0
$0
€ 0
€ 0

Михаил Кочеров

Sr. Software Developer at Odin

Использование maven для сборки больших модульных c++ проектов на примере Odin Service Automation

В докладе рассматривается технология сборки C++ проектов на основе maven, применяемая в Odin Service Automation (OSA). OSA – это мультиплатформенный (Windows, Linux), мультиязыковый (C++, C#, Java), большой (~1MLOC C++ кода, ~2MLOC Java кода), распределённо разрабатываемый (команды в Мск и Нск) проект.

До недавнего времени сборка OSA осуществлялась через pmake / msbuild с применением распределённой компиляции (distcc), процесс сборки управлялся многочисленными обвязочными скриптами. С ростом продукта проявились негативные стороны применяемой технологии:
– практически не работающая инкрементальная сборка, что заставляло делать частые и длительные clean сборки;
– отсутствие независимо собираемых модулей (монолитность) увеличивало время сборки и делало цену ошибки в логически независимых модулях очень великой, т.к. блокировала разработку всех команд;
– обвязочные in-house скрипты делали высокой стоимость владения системой сборки, осложняли включение новых разработчиков в работу.

Было принято решение о переходе на maven для сборки OSA. Maven – это система сборки традиционно применяемая в Java проектах. Сильные стороны maven:
– продвинутая система управления зависимостями (dependency management) с поддержкой удаленных репозиториев;
– встроенная поддержка параллелизации сборки;
– большое community разработчиков и пользователей.

С другой стороны на сборку C++ проектов maven изначально не рассчитан. Поэтому были выработаны технические решения по следующим аспектам:
– система абстрактных проектов для различных вариантов сборки C++ артефактов (исполнимый файл, статическая и динамическая библиотека);
– автоматическая кодогенерация;
– сборка и пакование (build and packaging) C++ артефактов;
– размещения и хранение (deployment and storage) C++ артефактов;
– подключение и использование (consuming) C++ артефактов;
– работа с внешними (contrib) C++ проектами;
– параллелизация сборки;
– модуляризация проекта: ячейки (cells) и модули (modules).

Использование maven для сборки OSA позволило:
– провести разбиение проекта на отдельно собираемые модули;
– сократить время сборки на 60%;
– существенно снизить стоимость владения build системой.

В заключении доклада приводятся цена перехода:
– трудозатраты ~4ч/л;
– утрата распределённой сборки.

Также приводятся некоторые соображения относительно того, когда переход на maven для С++ является целесообразным.

Purchased
In cart
0 ₽
0 ₽
$0
$0
€ 0
€ 0
Get access to all talks
Purchased
In cart
0 ₽
0 ₽
$0
$0
€ 0
€ 0

Александр Гранин

Ведущий разработчик at 2ГИС

Функциональный микроскоп: линзы в C++

Доклад о хардкорном функциональном программировании на C++: что такое линзы, как они устроены и какие проблемы решают или могут решить.

Purchased
In cart
0 ₽
0 ₽
$0
$0
€ 0
€ 0

Евгений Рыжков

Генеральный директор at PVS-Studio

Как мы уменьшили количество ошибок в Unreal Engine с помощью статического анализа кода

Размер и сложность проектов растёт. С кодом всё сложнее совладать, поэтому статический анализ всё больше набирает популярность. А лидеры отрасли все чаще внедряют такие инструменты у себя. Мы расскажем об использования статического анализатора кода в игровой индустрии на примере работы с проектом Unreal Engine 4. Про это на сайте компании Epic Games можно найти статью. Но одно дела статья, а другое дело живой рассказ. Вы услышите интересные истории, увидите примеры ошибок в коде Epic Games, да и просто пообщаетесь с участниками внедрения анализатора. Если вы ещё не решили, нужен ли статический анализатор вашему проекту, обязательно приходите послушать наш доклад.

Purchased
In cart
0 ₽
0 ₽
$0
$0
€ 0
€ 0

Алексей Кутумов

Программист at Лаборатория Касперского

One definition rule – что это такое, и как с этим жить

В докладе будет разобрано, что-же такое ODR, какие ошибки могут быть из-за нарушения этого правила. Также будет представлен Proof-of-concept утилиты на базе clang tooling по автоматическому поиску таких ошибок.

Purchased
In cart
0 ₽
0 ₽
$0
$0
€ 0
€ 0

Tickets

Video
Access to all videos
Purchased
In cart
0 ₽
0 ₽
$0
$0
€ 0
€ 0

Organizer

C++ User Group
http://cpp-russia.ru

Organizer committee: Сергей Платонов, conf@cpp-russia.ru, 79052927713

Similar events

September 24-29 2017
Talks 139
Views 1.72 M
c++, development, код, программирование, разработка, язык программирования
August 25-26 2017
Talks 8
Views 10.19 K
c++, development, код, программирование, разработка
February 24-25 2017
Talks 26
Views 71.68 K
c++, development, код, программирование, разработка
more