Рубрика «c++ russia 2019»

Инициализация в современном C++ - 1

Общеизвестно, что семантика инициализации — одна из наиболее сложных частей C++. Существует множество видов инициализации, описываемых разным синтаксисом, и все они взаимодействуют сложным и вызывающим вопросы способом. C++11 принес концепцию «универсальной инициализации». К сожалению, она привнесла еще более сложные правила, и в свою очередь, их перекрыли в C++14, C++17 и снова поменяют в C++20.

Под катом — видео и перевод доклада Тимура Домлера (Timur Doumler) с конференции C++ Russia. Тимур вначале подводит исторические итоги эволюции инициализации в С++, дает системный обзор текущего варианта правила инициализации, типичных проблем и сюрпризов, объясняет, как использовать все эти правила эффективно, и, наконец, рассказывает о свежих предложениях в стандарт, которые могут сделать семантику инициализации C++20 немного более удобной. Далее повествование — от его лица.

Читать полностью »

Концепты: упрощаем реализацию классов STD Utility - 1

Появляющиеся в C++20 концепты — давно и широко обсуждаемая тема. Несмотря на избыток материала, накопившегося за годы (в т.ч. выступления экспертов мирового уровня), среди прикладных программистов (не засыпающих ежедневно в обнимку со стандартом) все еще остается неразбериха, что же такое С++20-концепты и так ли они нам нужны, если есть проверенный годами enable_if. Частично виной тому то, как концепты эволюционировали за ~15 лет (Concepts Full + Concept Map -> Concepts Lite), а частично то, что концепты получились непохожими на аналогичные средства в других языках (Java/С# generic bounds, Rust traits, ...).

Под катом — видео и расшифровка доклада Андрея Давыдова из команды ReSharper C++ с конференции C++ Russia 2019. Андрей сделал краткий обзор concept-related нововведений C++20, после чего рассмотрел реализацию некоторых классов и функций STL, сравнивая C++17 и С++20-решения. Далее повествование — от его лица.

Читать полностью »

Обзор программы С++ Russia 2019 Piter: асинхронность, модули, библиотеки… и такси - 1

Что общего у этих людей, помимо того, что все они известны в мире C++?

  • Sean Parent
  • Eric Niebler
  • Marshall Clow
  • Bryce Adelstein Lelbach
  • Антон Полухин
  • Андрей Давыдов

Ответ: все они приедут на C++ Russia. Теперь, когда лето кончилось и все вернулись из отпусков, пора ждать следующую большую C++-конференцию: C++ Russia 2019 Piter. На ней выступят не только люди из этого списка, но и многие другие международные докладчики. 30 докладов, 2 полных дня с 10 утра до 7 вечера, никаких вводных историй и чтения документации по слогам — сразу сплошной хардкор.

Это оказалась одна из самых быстро и качественно организованных наших конференций, половина программы стала известна уже летом: спикеры чётко знают, какие вещи хотят рассказать на C++ Russia. Сейчас программа почти стабилизировалась, и настало время приоткрыть завесу тайны.

Читать полностью »

Этот хабрапост объединяет десять лучших докладов от таких спикеров, как Nicolai Josuttis, Timur Doumler, Андрей Давыдов и многих других.

C++17/20/23, concepts, immutable data structures, concurrency, parallelism, metaprogramming — всё это темы конференции C++ Russia 2019, прошедшей этой весной в Москве. Более шести сотен участников, известные международные спикеры, глубокие доклады. Обратите внимание — доклады такие, что устареют очень нескоро, а применить полученные знания можно хоть сейчас.

Десятка лучших докладов C++ Russia и плейлист конференции в открытом доступе - 1

Формат таков:

  • Обязательное видео на YouTube
  • Подробное описание доклада на русском языке (со слайдами, если они есть)
  • Краткая биография докладчика

Не стесняйтесь писать комментарии! Кстати, в плейлисте, опубликованном под катом, есть не только топ-10. И мы выключили рекламу на YouTube, так что никто не будет мешать.

Читать полностью »

Конференция C++ Russia — пока что самая суровая и одновременно ламповая конференция за последнее время. Она проходила в Конгресс-парке гостиницы «Украина» в Москве и собрала аудиторию более чем в шесть сотен человек.

Как сказал один из товарищей на афтепати: «Я со школы пытаюсь изучить C++, но постоянно натыкаюсь на что-то новое». Здесь почти каждый доклад рассказывал о чём-то новом. Иногда — о чём-то совершенно мозговзрывающем, что навсегда останется с тобой.

C++ Russia всегда отличалась наличием особенных спикеров и особенных докладов, и этот раз не стал исключением. Давайте немного оглянемся на то, что происходило в эти два насыщенных дня.

C++ Russia 2019. Небольшой отчет с места событий и анонс следующей конференции в Санкт-Петербурге - 1

Читать полностью »

Современный мир C++ серьёзно отличается от того, что был привычен нам во времена C++ 98. Кто-то этим восхищается, кого-то это раздражает, но факт остаётся фактом. Вот какие темы будоражат умы разработчиков сегодня:

  • Современные и новые возможности языка C++
  • Функциональное программирование
  • Метапрограммирование
  • Многопоточность, параллелизм, асинхронность и все-все-все
  • Как жить с имеющимися инструментами

Меньше чем через месяц пройдёт конференция, которая старается ответить на эти вопросы: C++ Russia 2019. Давайте коротко взглянем, как это у неё получится.

Обзор программы C++ Russia 2019. Что день грядущий нам готовит? - 1

Читать полностью »

Всем привет!

Недавно в Новосибирске прошла очередная C++ Siberia 2019. На конференции была уютная атмосфера и много хороших докладов. Пользуясь случаем, я побеседовал с двумя нашими докладчиками, которых совсем скоро вы сможете увидеть и в Москве.

Беседы о функциональном программировании на C++ Siberia 2019 - 1 Иван Чукич — один из разработчиков KDE, преподаватель и исследователь дизайна языков программирования в Белградском университете.

Беседы о функциональном программировании на C++ Siberia 2019 - 2 Александр Гранин (graninas) — известный спикер и разработчик, специализирующийся на ФП, организатор новосибирского ФП-сообщества LambdaNsk.

Беседы о функциональном программировании на C++ Siberia 2019 - 3

Читать полностью »

Всем привет!

Недавно в Новосибирске прошла очередная C++ Siberia 2019. На конференции была уютная атмосфера и много хороших докладов. Видеозаписи докладов сейчас готовятся к публикации. Пользуясь случаем, я побеседовал с двумя нашими частыми докладчиками, которые редко пропускают конференции и делают всегда отличные доклады: Антон Полухин antoshkka и Павел Филонов.

Беседы о C++: РГ 21, Boost, конференции - 1 Антон — представитель России в ISO на международных заседаниях рабочей группы по стандартизации C++, автор нескольких принятых предложений к стандарту языка C++, Boost-библиотек и книги «Boost C++ Application Development Cookbook».

Беседы о C++: РГ 21, Boost, конференции - 2 Павел — разработчик-исследователь в Лаборатории Касперского, занимается вопросами применения методов машинного обучения в задачах обеспечения безопасности кибер-физических систем, ведёт преподавательскую деятельность. В ожидании видео с конференции предлагаю вам прочитать расшифровку нашей беседы.

Беседы о C++: РГ 21, Boost, конференции - 3

Читать полностью »

Здесь будет длиннющая стена текста, с типа случайными мыслями. Основные идеи:

  1. В C++ очень важно время компиляции,
  2. Производительность сборки без оптимизаций тоже важна,
  3. Когнитивная нагрузка ещё важней. Вот по этому пункту особо распространяться не буду, но если язык программирования заставляет меня чувствовать себя тупым, вряд ли я его буду использовать или тем более — любить. C++ делает это со мной постоянно.

Блогпост «Standard Ranges» Эрика Ниблера, посвященный ренжам в C++20, недавно облетел всю твиттерную вселенную, сопровождаясь кучей не очень лестных комментариев (это ещё мягко сказано!) о состоянии современного C++.

«Современный» C++: сеанс плача с причитаниями - 1

Даже я внёс свою лепту (ссылка):

Этот пример пифагоровых троек на ренжах C++20, по моему, выглядит чудовищно. И да, я понимаю, что ренжи могут быть полезны, проекции могут быть полезны и так далее. Тем не менее, пример жуткий. Зачем кому-то может понадобиться такое?

Давайте подробно разберём всё это под катом.Читать полностью »