Annotation processor: Say less, mean more
Как часто вам приходится писать рутинный код? Да, вы можете избавиться от него с помощью выделения кода в методы, классы и библиотеки с кучей API, но даже этот подход не всегда позволяет эффективно сократить код, так как есть части за которыми надо следить руками и дополнять.
Современная Java разработка (как и Kotlin) имеет возможность генерация кода в момент компиляции - Annotation Processor. Суть технологии проста - вы помечаете код аннотациями, а специальная утилита, называемая
процессор аннотаций (в Kotlin это kapt) запускают написанный вами обработчик этих аннотаций и позволяют во время компиляции сделать различные операции, например сгенерировать код.Большинство Android разработчиков используют библиотеки с Annotation Processor: Dagger 2, Room, Butterknife, Arch Component Lifecycle.
Упростить свою задачу с помощью кодогенерации и Annotation Processor не так сложно. Подумайте что в вашем вы бы перестали бы писать каждый раз, возьмите JavaPoet или KotlinPoet, изучите статью и вперед!