Java 4..11, Kotlin, Code Coverage и их лучший друг — байткод: скандалы, интриги, расследования

День 1 /  / Зал 4  /  RU /

Комментарий Программного комитета:

Доклад на примерах иллюстрирует фундаментальные ограничения, с которыми сталкиваются инструменты, работающие на уровне байт-кода. Послушать будет полезно всем, кто работает с JVM-языками. Будет и Kotlin, и Java 11, и даже Java 1.4 для любителей археологии.

Знаете ли вы, что внутри ваших .class-файлов? А готовы поспорить? Давайте повеселимся, исследуя конструкции байт-кода, и изучим, как различные компиляторы (Java/Kotlin) и их версии, включая недавно выпущенный javac 11, преобразуют ваш исходный код.

Наши исследования будут основаны на деталях реализации самого популярного инструмента для анализа покрытия Java-кода тестами — JaCoCo, чья недавно выпущенная версия находит в байт-коде и отфильтровывает вспомогательные конструкции, генерируемые компиляторами, которые в противном случае требуют зачастую сложных и ненужных ухищрений, чтобы добиться полного покрытия кода.


Евгений Мандриков
SonarSource

Евгений участвует в различных проектах с открытым исходным кодом и выступает на международных конференциях и JUGах. Он является одним из ведущих разработчиков JaCoCo, а также руководителем проекта EclEmma в Eclipse Foundation, интегрирующего JaCoCo в Eclipse IDE. В своей повседневной работе в SonarSource Евгений занимается разработкой статических анализаторов кода для таких языков, как Java, C / C++, C#, JavaScript.

Прошлые выступления спикера