Кроссъязыковый рефакторинг « Изменение сигнатуры метода » Медведев Максим Юрьевич, 445 гр. Руководитель : Громов Петр Александрович
Введение Существует много совместимых языков На JVM Java Groovy Scala Clojure … Многие проекты разрабатываются сразу на нескольких языках Необходимость поддержки кроссъязыковых рефакторингов
Цель курсовой работы Разработать кроссъязыковый рефакторинг « Изменение сигнатуры метода » В рамках IDE IntelliJ IDEA Поддержка языков Java Groovy
Изменение сигнатуры метода Позволяет редактировать Название метода Тип возвращаемого значения Модификатор доступа Список параметров Все ссылки и использования метод а соответствующим образом обрабатываются Вызовы метода Ссылки в javadoc Переопределенные методы в классах - наследниках
Алгоритм работы Диалог с настройкой рефакторинга Диалоги для Java и Groovy отличаются Поиск ошибок в введенных данных Поиск всех ссылок и использований метода Поиск коллизий Метод с указанной сигнатурой уже существует Параметр перекрывает локальную переменную Обработка метода Обработка найденных использований метода
Результат Разработан кроссъязыковый рефакторинг « Изменение сигнатуры метода » Поддержаны языки Java Groovy Переработана существующая поддержка для Java Поддержана практически вся функциональность