Автоматический рефакторинг кода с помощью codemodes

Frontend
Зал №5

Иногда бывает так, что изменение сигнатуры одной функции или обновление зависимости может повлечь за собой несколько дней скрупулёзной работы. Для упрощения и автоматизации этого процесса, можно написать свой codemode. Сodemode — это скрипт, работающий с абстрактным синтаксическим деревом (ast) javascript. Цель codemode — автоматизировать рефакторинг кода.

В своём докладе я расскажу про jscodeshift — тулкит для написания codemodes. Покажу и разберу несколько примеров codemodes: начиная простыми и заканчивая теми, которые могут быть использованы в вашем проекте. Вы увидите, что работа с ast на самом деле не такая уж и сложная задача, как может показаться на первый взгляд, и что владение этим инструментом может дать очень сильный прирост вашей эффективности.

Запись доклада

Презентация

Яндекс

Александр Мышов

Начал свою карьеру в энтерпрайзе как фул-стек разработчик. Работал с большими БД на Oracle и интерфейсами на ExtJS. Затем полностью переключился на JavaScript в 2ГИС в командах Онлайн и Web-карт. Последние два года работаю разработчиком интерфейсов в Яндекс Маркете. Занимаюсь фронтендом Маркета и разработкой на Node.JS. В свободное время занимаюсь open source проектами.

Начал свою карьеру в энтерпрайзе как фул-стек разработчик. Работал с большими БД на Oracle и интерфейсами на ExtJS. Затем полностью переключился на JavaScript в 2ГИС в командах Онлайн и Web-карт. Последние два года работаю разработчиком интерфейсов в Яндекс Маркете. Занимаюсь фронтендом Маркета и разработкой на Node.JS. В свободное время занимаюсь open source проектами.