C++ CoreHard Autumn 2016 Сonference
22 октября, Минск

C++ CoreHard Autumn 2016 Conf – очередная конференция для C++ разработчиков.

Организаторами выступает сообщество CoreHard.by, объединяющее не только С++ разработчиков, но и тех, кто интересуется С, ассемблером, промышленными контроллерами и высоконагруженными серверными решениями.

В этот раз мы поговорим о моделях акторов для С++ и бинарной совместимости, обсудим GMock Framework и надежное юнит-тестирование для С++. Вместе с контрибьютором Boost и автором книги «Boost C++ Application Development Cookbook» Антоном Полухиным (Москва) обсудим, как реализовать базовую рефлексию для С++ 14. А также мы поговорим о том, как устроена разработка в компании Microsoft и об опыте написания поисковой системы Bing вместе с Егором Кишиловым (Редмонд, США).

Участие в конференции бесплатное благодаря поддержке наших партнеров.

Поток 1 онлайн:

Поток 2 онлайн:

Форма обратная связи. Расскажите нам, что вы думаете о конференции

#CoreHardBy

Выступают

Программа

  • 11:00 - 11:10

    Открытие

  • 11:10 - 12:00

    Модель акторов и C++: что, зачем и как?

    Евгений Охотников

    Модель акторов, переживающая сейчас очередную волну популярности, является очень интересным подходом к разработке сложных приложений. С помощью модели акторов было создано множество систем, написанных на языке Erlang и на базе фреймворка Akka. Но Erlang и Akka -- это управляемые среды и безопасные языки программирования. А есть ли смысл применять модель акторов в C++? Если есть, то куда смотреть и что использовать? Какие подводные камни могут поджидать на этом пути? Об этом всем и пойдет речь в докладе.

  • 12:10 - 13:00

    GMock Framework

    Иван Сидоров

    Использование GMock для обеспечения спокойной и сытой жизни разработчика. Обзор как верхушки так и некоторых подводных частей GMock. Разбор возможностей фреймворка на примерах.

  • 13:10 - 14:00

    Рефлексия в C++14 на этапе компиляции без макросов и вспомогательной разметки

    Антон Полухин

    Недавно было открыто несколько новых метапрограмных техник в C++, позволяющих реализовать рефлексию, работающую "из коробки". В докладе я расскажу об этих техниках, покажу примеры использования и расскажу об их применимости в C++17. Желающие уже сейчас могут начать экспериментировать с рефлексией, используя библиотеку https://github.com/apolukhin/magic_get

  • 14:00 - 15:00

    Кофе-пауза

  • 15:00 - 15:50

    Что пришлось тестировать и о чем узнать при подготовке Linux-версии PVS-Studio

    Святослав Размыслов

    Большинство программистов плохо представляют, что означает создание PVS-Studio для Linux. Многие думают, что вся сложность в портировании кода, однако это очень далеко от истины: портировать код очень просто, однако это только 5% работы. Остальная работа скрыта от стороннего наблюдателя и заключается в решении многих инфраструктурных вопросов. Предлагаем заглянуть на кухню разработчиков анализатора PVS-Studio и узнать разные интересные нюансы их работы.

  • 16:00 - 16:50

    Скрещиваем Visitor, Builder, Composite, Decorator и Iterator: построение архитектуры на сквозном примере

    Антон Семенченко

    В рамках доклада мы поговорим о важности архитектурных решений, в том числе, для обеспечения высокого качества ПО при минимальных трудозатратах. Сквозной пример из области резервного копирования данных позволит лучше понять техническую, QA и общепроцессную составляющие подхода. Прошло достаточно времени, чтобы раскрыть технические детали без нарушения NDA, предложенный вариант на базе метрик, которые мы обязательно упомянем, был признан лучшим архитектурным решением в рамках компании – одного из лидеров отрасли, получил награду Microsoft, был «размножен» на смежные области. Приступаем: Builder, Decorator, Composite, Iterator и Visitor - как эти паттерны помогли решить нетривиальную С++ задачу.

  • 17:00 - 17:50

    О поисковой системе Bing и хороших программистах

    Егор Кишилов

    Расскажу о разработке поисковой системы Bing и о том, как 5 тысяч человек по всему миру делают веб-поиск лучше, о роли и эволюции С++ внутри Бинга, и о личных наблюдениях о лучших программистах, с которыми я работал.

  • 11:00 - 11:10

    Открытие

  • 11:10 - 12:00

    Практики надежного модульного тестирования для C++

    Юрий Ефимочев

    Модульное тестирование является неотъемлемой частью современного процесса разработки. В своем докладе я хочу поговорить о том как нужно разрабатывать модульные тесты в проекте на C++ так чтобы это приносило максимум пользы.

  • 12:10 - 13:00

    Упрощаем переход от JSON к C++ структурам и обратно

    Николай Гродзицкий

    В C++ приложениях, которые по тем или иным причинам используют JSON, как правило есть необходимость трансформировать данные из JSON представления в С++ структуры и наоборот. Речь пойдет об одной небольшой header-only библиотеке, которая позволяет облегчить этот рутинный кусок работы (https://bitbucket.org/sobjectizerteam/json_dto-0.1).

  • 13:10 - 14:00

    Использование систем аналитики крэшей

    Артем Лапицкий

    Аварийное завершение приложения — более чем неприятная ситуация. Особенно неприятно, если она случается уже на устройстве пользователя, когда нет возможности запустить отладчик и найти проблему. Тут и приходят на помощь разработчику системы отправки и анализа отчетов о падениях и техники postmortem debugging'а. Поговорим о существующих системах аналитики крэшей и чем они полезны для C++ разработчика.

  • 14:00 - 15:00

    Кофе-пауза

  • 15:00 - 15:50

    Хитрости вывода типов для C++

    Максим Лысков

    В докладе будут сделаны попытки ответить на вопросы, какой тип скрывается под маской auto, почему T&& не всегда rvalue, и почему move ничего не двигает.

  • 16:00 - 16:50

    О некоторых вопросах бинарной совместимости в C++

    Сергей Гомон

    При написании кода на C++ часто появляются вопросы о том, как он будет взаимодейтсвовать с внешним миром. Ответить на эти вопросы порой бывает нелегко, и причиной этому служит отсуствие описания ABI в стандарте C++. В докладе рассмотрим, что такое ABI, и как программисты C++ живут в отсутсвии стандарта на него.

  • 17:00 - 17:50

    Oxygine.2d: Low-level cross-platform game engine for A-projects

    Егор Чеботарев

    Мы обсудим как создать игру для PC или мобильных устройств. Поговорим о шаблонах пректирования и фичах C++, применимых к разработке игр.

Организаторы

  • Corehard.by
  • DPI Solutions
  • EPAM

Партнеры

  • DPI Solutions
  • Awem Games
  • SolarWinds
  • EPAM
  • Wargaming
  • eventspace.by
  • JetBrains
  • C++ User Group Russia
  • PVS-Studio

Инфопартнеры

  • dev.by
  • Imaguru
  • IBA Institute
  • comaqa.by
  • itstep.by
  • gamedev.by
  • javaday.by
  • conf.cocoaheads.by/