On @annotations - liberate yourselves from demons
summary
Claims that pervasive @annotations cause brittle, hard-to-debug Java code and that replacing them with explicit composition and small libraries yields faster development. Shows refactoring a “magic service” from many annotations down to two dependencies, uses constructor injection and the cake pattern, demos a Ratpack microserver with Ratpack 16ms start and black‑box HTTP tests, advocates functional helpers like doTransaction (Vavr/JavaSlang style), suggests JLQ/MyBatis over JPA, and warns against over‑mocking with Mockito.
AI-written summary · about
chapters (22)
- 0:00Introduction
- 1:30Polish Stack Overflow
- 3:00Magic Service
- 5:10Dependency Injections
- 7:47Lifecycle
- 9:54Mappers
- 10:47Encapsulation
- 12:11Solution
- 13:58Dependency injection
- 15:40Cake pattern
- 17:19Lazy service
- 21:04Ratpack
- 25:15Testing
- 26:47Build a wall
- 28:51Injection
- 32:04Testing only marks
- 33:15Is database internal
- 34:17Aspect
- 38:06Good annotations
- 42:49Problems with JPA
- 45:14Resources
- 46:29Limitations
related talks
55mOn Annotations — Time to Stop the Demons
50mRevealing the magic behind Java annotations
48mDo you know these Libraries?
01h 22mModern Java Component Design with Spring Framework 4.2
49mBreaking the Spring Framework's code: annotation's witchcraft
44mKeep Spring at Arm's Length!
50mBuilding HTTP Applications with Ratpack
49mSpring, Jakarta EE, CDI and Other Pathologies
