June 2008
Intermediate to advanced
400 pages
14h 4m
English
CHAPTER 18
![]()
Extensible Visitor Pattern Case Study
Playing games is one possible road that leads to the learning of API design skills. Another is performing a different kind of mental exercise: finding an interesting problem, analyzing it, finding potential solutions, and deciding which is better and why. While doing this kind of exercise, you can often find yourself discovering surprising results that deepen your insight into the problem.
Let’s go through one interesting example here. It started when I first heard about the JDK 1.6 proposal for a new API to model Java sources. An initial version of the API was included in JDK 1.5 in the apt tool, ...