~/talk

Making Java more dynamic

Talkat JavaDay Lviv 2016 · on Friday, 2016-07-22· [java, compilers-and-language-design]
slides:none on file

Shows concrete use of ASM/Byte Buddy and the Instrumentation API to generate and rewrite Java bytecode at runtime, not for raw speed but to add behavior without losing type safety. Demonstrates subclassing and delegation to implement an annotation-driven security check, serialization of original code to allow invocation, and live class redefinition via Java agents and advice-style enter/exit hooks (example: System.nanoTime timing). Prototype runs in JVM, works in-place, and avoids runtime-performance penalties claimed for reflection.

AI-written summary · about

  1. 0:00Start
  2. 1:56Security Framework
  3. 7:10Just-in-Time Compilation
  4. 11:56Making Java More Dynamic
  5. 12:39Duck Typing
  6. 14:27Disclaimer
  7. 18:12Stack Machine
  8. 19:18Java Bytecode
  9. 20:01Manipulating a Class File
  10. 24:18Hello World Example
  11. 26:59Method Delegation
  12. 28:11Dependency Injection
  13. 29:51Runtime Redefinition
  14. 30:34Hot Swap
  15. 30:54Class Reloading Strategy
  16. 33:00Java Agents
  17. 34:12Agent Builder
  18. 34:51Java Agent
  19. 35:09Instrumentation Interface
  20. 36:26Dynamic Agent Attachment
  21. 37:35Dynamic Agent
~/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.