This module presents Java’s enterprise application development capabilities. Here, participants will master and take advantage of the Java GUI programming capabilities and use it in developing robust and scalable desktop applications. The module further provides core insights on distributed computing using Java. This enables participants to write applications that can communicate over computer networks. After completing this module, participants will have become seasoned java programmers capable of developing both distributed and single-user applications.