Java design: building better apps and applets - Coad, Peter (New Delhi Prentice Hall, 2000)