Myvideo

Guest

Login

Анастасия Бирилло Compile-time рефлексия в Kotlin

Uploaded By: Myvideo
1 view
0
0 votes
0

На этом докладе мы не будем рассматривать все возможности, которые предоставляет рефлексия Kotlin в общем случае. Мы разберём довольно конкретную задачу «Как найти все классы, помеченные аннотацией и\или имеющие определённый супертип?» (и аналогичную для функций). Такую задачу можно решить несколькими способами, но все они имеют существенные недостатки. Например, стандартная Java рефлексия сильно увеличит время старта приложения. Такие библиотеки, как Classgraph ускорят процесс, но все еще заставят нас постоянно осуществлять поиск по classpath (хоть и оптимизированный). Annotation processing позволит проиндексировать классы во время компиляции, но при этом придется использовать специальные аннотации и усложнять проект. Во время доклада мы разберем новый подход — плагин для компилятора Kotlin, который позволяет перенести решение этой задачи в compile-time без существенных ограничений и решать ее в run-time за O(1). Кроме того, с помощью него можно решить данную задачу в общем виде и искать сущност

Share with your friends

Link:

Embed:

Video Size:

Custom size:

x

Add to Playlist:

Favorites
My Playlist
Watch Later