This is a list of 10 best practices that are more subtle than your average Josh Bloch Effective Java rule. While Josh Bloch's list is very easy to learn and concerns everyday situations, this list here contains less common situations involving API / SPI design that may have a big effect nontheless. I have encountered…
D. Ratiu, M. Feilkas, and J. Jürjens. Proc. of the 12th European Conf. on Software Maintenance and Reengineering, page 203--212. IEEE Computer Society, (2008)