Reasoning correctly about dates and times seems easy but is not. Designing a good date/time API is even harder. We will be looking at how Java got it wrong so far, and how things will change with the upcoming JDK 8.
Presentation for the Iasi JUG, 18 September 2013
11. java.util.Calendar, as of JDK 7
• Missing abstractions
• Full of bad surprises
– Unsound design – violates Liskov
– Violates POLA
– Getter methods with side effects!
– Not thread safe
– Untestable