Successfully reported this slideshow.
@rbrugier#JavaProcessor
Annotation processor, trésor caché
de la JVM
@rbrugier#JavaProcessor
Annotation processor, trésor caché de la JVM
Raphaël Brugier
@rbrugier
Développeur chez
Agenda
Nos utilisations
@ ?
Bien débuter
@rbrugier#JavaProcessor
Les @nnotations
@rbrugier#JavaProcessor
Compilation
@ JavacJavac
Validation
Génération
@rbrugier#JavaProcessor
Processors @LesFurets
@rbrugier#JavaProcessor
Processors @LesFurets
@rbrugier#JavaProcessor
Vs Reflection
•Code visible dans l'IDE
•Stack erreurs plus simple
•Performances
JavacJavac
ProcessorsProcessors
@rbrugier#JavaProcessor
Bien débuter
Déclaration
Extraction
Génération
@rbrugier#JavaProcessor
Annotation Processor
+
=
@rbrugier#JavaProcessor
Google @AutoService
github.com/google/auto/tree/master/service
@rbrugier#JavaProcessor
Extraction
@rbrugier#JavaProcessor
Element Un « bloc » de programme
Java.lang.reflect Java.annotation.processing
Java.lang.package Pa...
Exemple Lister les retours des méthodes
@rbrugier#JavaProcessor
Écrire
@rbrugier#JavaProcessor
JavaPoet github.com/square/javapoet
@rbrugier#JavaProcessor
Test, Test, TEST ! github.com/google/compile-testing
Pour aller plus loin ...
« Annotation Processing Boilerplate Destruction » 
speakerdeck.com/jakewharton
« Writing Annotati...
Prochain SlideShare
Chargement dans…5
×

Annotation Processor, trésor caché de la JVM

5 205 vues

Publié le

Slides du quickie sur apt et les annotations processor à Devoxx France 2015.

Publié dans : Technologie

Annotation Processor, trésor caché de la JVM

  1. 1. @rbrugier#JavaProcessor Annotation processor, trésor caché de la JVM
  2. 2. @rbrugier#JavaProcessor Annotation processor, trésor caché de la JVM Raphaël Brugier @rbrugier Développeur chez
  3. 3. Agenda Nos utilisations @ ? Bien débuter
  4. 4. @rbrugier#JavaProcessor Les @nnotations
  5. 5. @rbrugier#JavaProcessor Compilation @ JavacJavac Validation Génération
  6. 6. @rbrugier#JavaProcessor Processors @LesFurets
  7. 7. @rbrugier#JavaProcessor Processors @LesFurets
  8. 8. @rbrugier#JavaProcessor Vs Reflection •Code visible dans l'IDE •Stack erreurs plus simple •Performances
  9. 9. JavacJavac ProcessorsProcessors
  10. 10. @rbrugier#JavaProcessor Bien débuter Déclaration Extraction Génération
  11. 11. @rbrugier#JavaProcessor Annotation Processor + =
  12. 12. @rbrugier#JavaProcessor Google @AutoService github.com/google/auto/tree/master/service
  13. 13. @rbrugier#JavaProcessor Extraction
  14. 14. @rbrugier#JavaProcessor Element Un « bloc » de programme Java.lang.reflect Java.annotation.processing Java.lang.package PackageElement java.lang.Class TypeElement Constructor ExecutableElement Method ExecutableElement Field, Parameter VariableElement
  15. 15. Exemple Lister les retours des méthodes
  16. 16. @rbrugier#JavaProcessor Écrire
  17. 17. @rbrugier#JavaProcessor JavaPoet github.com/square/javapoet
  18. 18. @rbrugier#JavaProcessor Test, Test, TEST ! github.com/google/compile-testing
  19. 19. Pour aller plus loin ... « Annotation Processing Boilerplate Destruction »  speakerdeck.com/jakewharton « Writing Annotation Processors to Aid Your Development Process »  github.com/irobertson/jpa-annotation-processor « LesFurets MDL4UI »  github.com/lesfurets/mdl4ui et dagger2, AndroidAnnotations, etc

×