~/talk

@Eliminate("Boilerplate")

Talkat droidcon NYC 2016 · 2016-09-29..09-30· [java, developer-experience]
github:rharter
slides:none on file

Shows how compile‑time annotation processing actually generates working builder classes via JavaPoet code generation and the javax.annotation processing API, producing private fields, fluent setters and a build() method that compiles into the project. Explains retention SOURCE, filer/messenger use, the annotation processing rounds lifecycle, and how to ship the processor on an apt/gradle configuration so the processor (and its Guava/etc. libs) stay off the APK — i.e. no runtime dependency added.

AI-written summary · about

  1. 0:00Introduction and welcome
  2. 1:19Java boilerplate problem
  3. 2:22Annotation processing overview
  4. 5:17Advantages of generated code
  5. 5:37Components of annotation processing
  6. 7:04Creating custom annotations
  7. 10:37Building the annotation processor
  8. 15:18Service loader discovery
  9. 17:06Annotation processor configuration
  10. 18:51Code generation with Java Poet
  11. 21:18Java Poet basics
  12. 23:15Generating fields and methods
  13. 26:56Assembling the builder class
  14. 28:19Processor implementation steps
  15. 33:35Finalizing and using the builder
  16. 35:45Practical usage and gotchas
  17. 36:49Tools and resources
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.