Procesory adnotacji?

0

Dowiedziałem się, nie wiedziałem wcześnie, że z Javą 8 pojawił się
javax.annotation.processing.AbstractProcessor

co powoduje, że zabawy w czasie kompilacji z adnotacjami są zestandaryzowane i łatwe, "dla każdego"

Pytanie brzmi: tworzycie jakieś własne adnotacje (i ich procesory) ?
Jeśli tak, to jaką dziedziną merytoryczną się one zajmują?
Jakie są luźne wrażenia?

3

nie,
nie,
nie

1

Używałem adnotacji w androidzie do tworzenia mappera pomiędzy c++ a JNI. Kodu tam było co nie miara, sam generator ~200 linii. W interfejsie ustawiałem adnotacje @JniMe, projekt się budował, wrapper wygenerowany, trzeba było go podpiąć w jedno miejsce.

Wszystko działało dobrze - okazało się jednak że po jakimś czasie kontrakt pomiędzy c++ a JNI się zmienił i utrzymanie tego rozwiązania było wolniejsze niż normalnie zapisanie takiego wrappera.

0
jarekr000000 napisał(a):

nie,
nie,
nie

Przeczuwam, gdzie jest Twój sprzeciw.

jednak zapewniam, że mam zastosowanie, że adnotacje są czystymi meta-danymi, a nie zastępnikami kodu.
A przeskok z runtime class scanning na compile time processor jest zmotywowany tylko szybkością.

1

Jeżeli adnotacje służą do dopisania rzeczy, które są poza kodem javy - json, serializacje, czy jak w przykładzie @lubie_programowac - to nie jest bardzo źle. W javie ciężko to robić lepiej.
Mnie trzęsie tylko jak widzę te wszyskie RolesAllowed, Transactional , Inject itp.
I tak - compile time adnotacje zwykle są mniej niebezpieczne.

1 użytkowników online, w tym zalogowanych: 0, gości: 1