Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 11 лет назад пользователемФилипп Чайковский
1 Трансляция кода из Groovy в Java в IntelliJ IDEA Дипломная работа Медведева Максима Научный руководитель: Громов П. С.
2 Groovy Динамический Объектно-ориентированный Совместим с Java На JVM Groovy-класс является Java-классом и наоборот Наследование сохраняет динамические свойства Расширяет синтаксис Java
3 Мотивация Ускорение критических частей кода Groovy медленнее Java в 5-10 раз Кроссъязыковые рефакторинги Изменение сигнатуры метода Добавление параметра Пожелания пользователей InetlliJ IDEA
4 Постановка задачи Транслятор исходного кода на Groovy в исходный код на Java в контексте IntelliJ IDEA Трансляция всех конструкций языка Около 90 Избавление от «динамичности» Вычисление типов Расстановка статических ссылок
5 Архитектура Транслятор блоков Транслятор выражений Транслятор классов Метод Выражение Замыкание Анон. класс Контекст трансляции
6 Трансляция ссылок def list=[1, 2, 3] print list[0] print list.get(1); print list.empty List list = new ArrayList (Arrays.asList(1, 2, 3)); print(DefaultGroovyMethods.getAt(list, 0)) print(list.get(1)); print(list.isEmpty());
7 Трансляция замыканий def x=0 list.each{int y -> x+=y } print x final Reference x=new Reference (0); DefaultGroovyMethods.each(list, new Closure (this, this) { public Number doCall(int y) { int i=x.get()+y; x.set(i); return i; }
8 Результаты Транслятор реализован Вывод типов Расстановка ссылок Улучшен вывод типов бинарных и унарных операторов Внедрен в IntelliJ IDEA Рефакторинг «Трансляция в Java» Появится в следующей версии IntelliJ IDEA
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.