Java's strengths can create problems for application development. While it allows developers to build componentized applications, its enablement of distributed computing, as well as its flexibility, ...