Доклады конференции С++ Russia

Nicolai Josuttis Автор книг «The C++ Standard Library» и «C++ Templates»
Nicolai Josuttis
Автор книг «The C++ Standard Library» и «C++ Templates»
День 1 / 10:30  / Зал 1 / EN / Для практикующих инженеров

C++17 — the biggest traps

This talk will list and discuss C++17 traps, explain the reasons for the underlying design, and give guidance how to deal with them. As a side effect you will learn a lot about some cool new features of C++17.

Подробнее
Алексей Миловидов Яндекс
Алексей Миловидов
Яндекс
День 2 / 16:00  / Зал 2 / RU / Для практикующих инженеров

Не слишком глупые указатели в ClickHouse

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

Подробнее
Антон Полухин Яндекс.Такси
Антон Полухин
Яндекс.Такси
День 2 / 19:00  / Зал 1 / RU / Введение в технологию

Незаменимый С++

Каждый новомодный язык программирования норовит заявить о том, что он быстрее, надёжнее и вообще по всем параметрам в несколько раз лучше C++. Давайте разберёмся — где правда, а где вымысел. Да начнётся битва между C++ и Asm/Rust/Go/Java/C#... !

Подробнее
Михаил Матросов Align Technology
Михаил Матросов
Align Technology
Александр Воронков Align Technology
Александр Воронков
Align Technology
День 1 / 16:30  / Зал 2 / RU / Введение в технологию

Как мы апгрейдили компилятор и поддерживали кроссплатформенность

Мы долгое время использовали С++11 в Visual Studio 2013 (только под Windows), а теперь используем С++17 в Visual Studio 2017 (под Windows) и GCC 7.3 (под Linux). Расскажем, как мы справились с основными проблемами, с которыми пришлось столкнуться в процессе этого перехода.

Подробнее
Phil Nash JetBrains
Phil Nash
JetBrains
День 2 / 17:30  / Зал 1 / EN / Для практикующих инженеров

The dawn of a new error

This talk will give you a solid idea of which error handling strategy to use when, what's coming next, and how to approach code now that will play nicely in that possible future.

Подробнее
Valentin Ziegler think-cell
Valentin Ziegler
think-cell
День 1 / 14:30  / Зал 3 / EN / Введение в технологию

Text formatting for a future range-based standard library

Valentin intends to convince you that the combination of ranges with a bit of metaprogramming makes for a very elegant solution to the text formatting problem.

Подробнее
Viktor Kirilov onqtam.com
Viktor Kirilov
onqtam.com
День 2 / 12:00  / Зал 3 / EN / Для практикующих инженеров

The hitchhiker's guide to faster builds

This talk will provide insights into why compilation (and linking) take so long for C++ and will then provide an exhaustive list of techniques and tools to mitigate the problem.

Подробнее
Rainer Grimm Modernes C++
Rainer Grimm
Modernes C++
День 2 / 10:30  / Зал 1 / EN / Введение в технологию

Concurrency and parallelism in C++17 and C++20/23

Threads, atomic variables, mutexes, and conditional variables are the basic building blocks of any concurrent application in C++, which are a big challenge even for the experienced C++ programmers. This massively changed with C++17 and even more with C++20/23. Let's discuss what did we get with C++17 and what can we hope for with C++20/23.

Подробнее
Александр Гранин
Александр Гранин
День 2 / 10:30  / Зал 2 / RU / Хардкор. Сложный низкоуровневый доклад, требующий от слушателя знаний технологии.

Монадические парсеры

Рассмотрим монадические парсеры: чем этот подход отличается от других видов парсинга, какие у него преимущества и недостатки и в чем здесь проявляются такие важные концепции функционального программирования, как функтор, аппликативный функтор и монада.

Подробнее
Ivan Čukić KDE e.V.
Ivan Čukić
KDE e.V.
День 1 / 18:00  / Зал 1 / EN / Для практикующих инженеров

Move-only C++ design

This talk will cover an approach to software design that allows only non-copyable move-only types called "linear types". We'll see all the C++ features that make and enforce types like these.

Подробнее
Timur Doumler
Timur Doumler
День 1 / 16:30  / Зал 3 / EN / Для практикующих инженеров

Initialisation in modern C++

In this talk, we will discuss the past, present, and future of initialisation in C++, the different types of initialisation and syntaxes for them, and how to use them correctly.

Подробнее
Juan Pedro Bolívar Puente Independent consultant
Juan Pedro Bolívar Puente
Independent consultant
День 2 / 16:00  / Зал 3 / EN / Хардкор. Сложный низкоуровневый доклад, требующий от слушателя знаний технологии.

Postmodern immutable data structures

We will talk about the architectural benefits of immutability and show how a very efficient and powerful persistent vector type can be built using state-of-the-art structures (Relaxed Radix Balanced Trees). We will also show an example application (a text editor) built using the architectural style proposed here. Not only is its code extremely simple, it outperforms most similar programs. Don't believe it? Come and see!

Подробнее
Vittorio Romeo Bloomberg L.P.
Vittorio Romeo
Bloomberg L.P.
День 2 / 14:00  / Зал 3 / EN / Для практикующих инженеров

Higher-order functions and function_ref

We're going to see examples of how higher-order functions can be used in practice to increase the quality of production code and the productivity of developers. A new abstraction proposed to the Standard Library for C++20, function_ref, will also be covered and compared to other techniques for the implementation of higher-order functions.

Подробнее
Алексей Малов iSpring
Алексей Малов
iSpring
День 2 / 14:00  / Зал 2 / RU / Введение в технологию

Рецепты использования умных указателей

Целевая аудитория доклада — разработчики С++, уже имеющие представление о базовых возможностях стандартных умных указателей. Из этого доклада они узнают ряд полезных приёмов использования как стандартных, так и пользовательских умных указателей.

Подробнее
Андрей Карпов PVS-Studio
Андрей Карпов
PVS-Studio
День 1 / 18:00  / Зал 3 / RU / Введение в технологию

На что нужно обратить внимание при обзоре кода разрабатываемой библиотеки

В докладе будет дан ряд советов, на что разработчикам библиотек стоит дополнительно обращать внимание на code review.

Подробнее
Сергей Садовников Лаборатория Касперского
Сергей Садовников
Лаборатория Касперского
День 2 / 17:30  / Зал 3 / RU / Хардкор. Сложный низкоуровневый доклад, требующий от слушателя знаний технологии.

Метаклассы в C++17: фантастика? Реальность!

Сергей расскажет, как именно поддержку метаклассов можно реализовать в виде сторонней утилиты (на базе clang frontend) и что можно/нужно сделать для того, чтобы интегрировать результаты работы этой утилиты в собственный код.

Подробнее
Андрей Давыдов JetBrains
Андрей Давыдов
JetBrains
День 2 / 16:00  / Зал 1 / RU / Хардкор. Сложный низкоуровневый доклад, требующий от слушателя знаний технологии.

Концепты: упрощаем реализацию классов std utility

Поговорим немного о концептах в общем и о том, как они упрощают реализацию generic-классов.

Подробнее
Андрей Давыдов JetBrains
Андрей Давыдов
JetBrains
День 2 / 14:00  / Зал 1 / RU / Хардкор. Сложный низкоуровневый доклад, требующий от слушателя знаний технологии.

Метапрограммирование, щадящее компилятор

Немного советов, как писать метапрограммы, минимизируя нагрузку на компилятор.

Подробнее
Кирилл Тихонов DINS
Кирилл Тихонов
DINS
День 1 / 14:30  / Зал 1 / RU / Хардкор. Сложный низкоуровневый доклад, требующий от слушателя знаний технологии.

Оптимизации времени компиляции. Даем больше информации компилятору

Будут рассмотрены способы передачи компилятору информации об используемых данных и действиях над ними.

Подробнее
Олег Фатхиев Яндекс
Олег Фатхиев
Яндекс
День 1 / 12:30  / Зал 2 / RU / Хардкор. Сложный низкоуровневый доклад, требующий от слушателя знаний технологии.

Эволюция метапрограммирования: как правильно работать со списками типов

Рассказ о метапрограммировании в разные годы его существования, а также о том, как правильно работать со списками типов.

Подробнее
Антон Дунчев Wargaming
Антон Дунчев
Wargaming
День 1 / 14:30  / Зал 2 / RU / Для практикующих инженеров

Метапрограммирование для игрового движка

Доклад посвящен особенностям применения современных стандартов языка С++ в игровом движке World of Tanks.

Подробнее
Сергей Федоров Яндекс.Такси
Сергей Федоров
Яндекс.Такси
День 2 / 17:30  / Зал 2 / RU / Хардкор. Сложный низкоуровневый доклад, требующий от слушателя знаний технологии.

Шаблоны C++ и базы данных

Рассказ о проектировании и реализации драйвера PostgreSQL с человеческим интерфейсом с применением почти всех доступных на данный момент языковых средств C++17.

Подробнее
Илья Богданов Exonum, the Bitfury Group
Илья Богданов
Exonum, the Bitfury Group
День 2 / 12:00  / Зал 2 / RU / Готовьтесь, будет подгорать

Язык программирования Rust — обзор экосистемы

Краткий обзор инструментов для разработчика, библиотек и языковых возможностей языка Rust.

Подробнее
Павел Новиков Align Technology
Павел Новиков
Align Technology
День 2 / 12:00  / Зал 1 / RU / Для практикующих инженеров

Асинхронная разработка на C++

Павел расскажет о возможностях асинхронного выполнения задач, которые предоставляет стандартная библиотека C++ сейчас и планируется добавить в будущем, о concurrency::task из PPL как иллюстрации этого и о том, как облегчает написание и понимание написанного кода использование корутин.

Подробнее
Руслан Арутюнян Intel
Руслан Арутюнян
Intel
День 1 / 12:30  / Зал 1 / RU / Для практикующих инженеров

Modern C++ allocators

Цель доклада — познакомить людей с аллокаторами в целом, рассказать про современные тенденции, рассказать, какие виды аллокаторов в каких случаях использовать, объяснить, как работает модель пропагации аллокаторов для вложенных контейнеров, рассказать, что может ждать разработчиков библиотек при поддержке аллокаторов.

Подробнее
Александр Шмидт Artec 3D
Александр Шмидт
Artec 3D
День 1 / 16:30  / Зал 1 / RU / Введение в технологию

Реактивный C++

Доклад-туториал по реактивному программированию. По шагам — от простого к сложному — разберёмся, как данный подход помогает нам абстрагироваться от работы со сложным асинхронным кодом, при этом упрощая его тестирование.

Подробнее
Javier García Sogo JFrog/Conan
Javier García Sogo
JFrog/Conan
День 2 / 10:30  / Зал 3 / EN / Для практикующих инженеров

ABI compatibility is not a MAJOR problem

Javier intends to make clear the difference between API and ABI, source and binary compatibility. He'll point out the extreme relevance that ABI compatibility has for library developers and give examples of things that affect the ABI and some techniques to minimize that pain.

Подробнее
Alexander Titov Intel
Alexander Titov
Intel
День 1 / 12:30  / Зал 3 / EN / Введение в технологию

Know your hardware: CPU memory hierarchy

The talk provides an overview of the structure and algorithms of the memory hierarchy in a modern CPU.

Подробнее

Наши контакты