Автоматизация рефакторинга Язык Python, его эволюция и использование

Доклад принят в программу конференции
Владимир Протасов
Parallels

Тимлид команды облачной разработки Parallels, много пишет на Python. Когда не пишет, активно работает со студентами (в том числе читает лекции в университетах и ведет стажировки).

vprotasov@parallels.com
Тезисы

Периодически возникают ситуации, в которых IDE не справляется с задачей рефакторинга. В этом случае мы пытаемся использовать поиск/замену по проекту, sed, awk и другой подручный инструментарий. Но чем сложнее задача, тем выше вероятность того, что придется прошерстить весь код и везде вручную внести требуемые однотипные изменения в сотнях файлов.

У нас часто получается автоматизировать даже сложные задачи рефакторинга, и я с удовольствием расскажу вам, как. С реальными примерами.

Подготовительное задание

Полезно будет заранее посмотреть в википедии, что такое Concrete Syntax Tree и чем оно отличается от AST. Также будет полезно прочитать про паттерн Visitor, если с ним никогда не сталкивались.

Другие доклады секции Язык Python, его эволюция и использование