Package names - impl v internal
<p>In my time of digging around Java APIs I have come across both impl and internal packages. Up until now I never really thought about the difference - as with all enterprisey Java apps, I figured they just meant that "actual implementation in here; you (API user) should be really using the interface. Go away."</p>

<p>A little bit of digging around Stack Overflow seems to suggest that the internal package at least can have <a href="http://stackoverflow.com/questions/551872/best-practice-for-controlling-access-to-a-internal-package">some security placed around it</a>. </p>

<p>So, what is the difference? I don't think it is a matter of taste because I have seen APIs with both. </p>
