Annotation Processor, trésor caché de la JVM

4 915 vues

Publié le

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

Publié dans : Technologie
0 commentaire
6 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

Aucun téléchargement
Vues
Nombre de vues
4 915
Sur SlideShare
0
Issues des intégrations
0
Intégrations
3 209
Actions
Partages
0
Téléchargements
30
Commentaires
0
J’aime
6
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

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

×