Не с первого раза: упрощаем С++ код с помощью DSL, Илья Шишков

Поделиться
HTML-код
  • Опубликовано: 25 авг 2024
  • Поделится опытом решения реальной задачи в одном из сервисов бэкенда Яндекс Еды. Задача состоит в том, что надо вычислять длительности отдельных стадий заказа в Еде: попадания курьера в ресторан, приготовления, доставки готового блюда и т. д. Помимо расчёта самого значения, надо сохранять в лог формулу, по которой оно было рассчитано, а также значение всех переменных в этой формуле. Это нужно для дальнейшей аналитики и отладки. Изначально это было запрограммировано «в лоб»: был отдельный код расчёта значения и отдельный код формирования текстового представления формулы и сохранения значений переменных.
    У такого кода масса недостатков: его трудно понимать и менять. Была поставлена задача сделать так, чтобы достаточно было написать формулу, и всё необходимое формировалось само.
    В своём докладе спикер покажет не только итоговое решение, но и путь, которым к нему пришли. Вы увидите, как разные возможности С++ применяются для решения реальной задачи.

Комментарии • 4

  • @user-mo7ge4cw3x
    @user-mo7ge4cw3x Год назад +1

    Выражая своё глубокое уважение к докладчику, за его титанический труд, за умение работать с головоломными шаблонами си++, у меня возникает один вопрос, а нафига?!!! Может было проще сделать какой нибудь кодогенератор, который по представленным формулам, написанным нормальным математическим языком, сгенерировать код на си? Который потом можно откомпилировать и запускать. На мой взгляд автор доклада наглядно показал что Си++ не самый лучший язык для написания DSL, если конечно не хочешь свихнуться на 2м этапе. Теперь я понимаю почему программисты говорят о профессиональном выгорании.

    • @ortsaslan
      @ortsaslan 3 месяца назад

      Очень интересен ответ автора или другого опытного плюсовика на данный вопрос.

  • @andrewbondaryuk
    @andrewbondaryuk Год назад

    В Яндексе уже пробуют раст? :)

  • @igorseledtsov7345
    @igorseledtsov7345 Месяц назад

    Сначала изобретаем шизоязык..
    а потом руководство как на нём написать по проще
    Ну есть же Си, где всё роимитивно и быстро делается Ах да он не всем по зубам...