Applied Go code similarity analysis Инфраструктура и тулинг
Работал над компиляторами для Go и KPHP, а также над утилитами статического анализа этих языков (NoVerify, go-critic). Большая часть интересов связана с devtools и языками программирования, но в свободное время иногда разрабатывает видеоигры.
- Как находить дублирующиеся функции и методы в вашей кодовой базе?
- Как избежать переизобретения функционала стандартной библиотеки Go?
- Как упростить анализ Go-кода на синтаксическом уровне?
Ключом к ответам на эти вопросы является нормализация Go-программ и использование инструментов для поиска кода по шаблонам (например, gogrep).
В докладе мы рассмотрим библиотеку для нормализации кода на Go и несколько её практических применений, которые оформлены в виде полезных утилит. Эти программы помогают получить ответы на вопросы, которые мы ставили выше.