Date Tags yandex / c++

Посетил на днях (2014-08-20, задержался с постом) c++ party, организованную Яндексом в Нижнем Новгороде. Решил оставить тут свои впечатления от этого мероприятия. Как раз под категорию Misc подходит. Все было очень позитивненько и познавательно. Интересные люди и занимательные доклады. Ощутилась этакая Яндекс культура.

Особо понравился первый доклад. Он был посвящен corutine'ам и простому асинхронному коду. Я так понял разработчики были впечатлены gorutines при построении своего решения. Очень хорошо и доступно было продемонстрировано упрощение кода. Основной упор был направлен на объяснение концепций позволяющих избавиться от сложных и запутанных конечных автоматах. Выглядит очень красиво и просто. Кода в презентации было достаточно много, но весь он был легко читаем и понятен. Последнее нельзя сказать про второй доклад.

Второй доклад был посвящен обобщенному программированию на C++. Муть мутная с моей точки зрения. Напомнило статью на хабре о разработке игры жизнь на C++ шаблонах. Там весь процесс игры осуществляется на этапе компиляции и к старту приложения все уже мертвы. Рассказчик серьезно так углубился в реализацию Boost.Geometry. И в результате чего, по-моему, зал немного приуныл. Вообще говоря из этого доклада я вынес следующую мысль. Очень удобно использовать библиотеки, позволяющие использовать некие внешние типы (например, собственные геометрические структуры. Смотрим Boost.Geometry с ее замечательными макросами). Но вот реализация и поддержка подобных библиотек не является такой уж простой задачей. Об этом как минимум говорит реакция одного слушателя, который яростно критиковал доклад.

Наибольшее впечатление произвело то, что в Яндаксе ребята умудряются убедить начальство в необходимости выполнить такой крупный рефакторинг (по мотивам первого доклада: переход от конечных автоматов к корутинам). Кроме того, видимо, руководство само заинтересовано в подобном развитии проектов. Очень впечатляет. Я в своей рабочей деятельности такого пока не видел.



Comments

comments powered by Disqus