The Java Programming System, Java Components (JavaBeans), Java Frameworks, Remote Method Invocation (RMI), J2EE Technology, J2ME Technology for Mobile Computing, Integrated Java Technologies for Networked Applications.
Semester:
August/Intersem
Rationale:
Java technologies are de-facto standard for developing modern complex software applications and systems. The course introduces those technologies to the students as both structure and organization, and practical tools for software development. The Java programming system serves as a basis of all technologies under consideration: Java for networking and distributed systems development, J2EE environment, J2ME environment for developing mobile computing applications, Jini, Jiro, Jtrix, etc.
Catalog Description:
The Java Programming System, Java Components (JavaBeans), Java Frameworks, Remote Method Invocation (RMI), J2EE Technology, J2ME Technology for Mobile Computing, Integrated Java Technologies for Networked Applications.
Credits:
3(2-3)
Prerequisite:
Consent of the instructor.
Course Outline:
The Java Programming System
Architecture and Structure
Applications and Applets
Reusable Classes and Packages
Java Implementation of the Principles of Object Orientation
Java Components (JavaBeans)
Beans Classification and Structure
Preparing and Creating Beans
Designing an Application using Beans
Java Frameworks
Java Frameworks Fundamentals
Swing GUI
Analysis and Design of Java Application Frameworks
Integrated Java Technologies for Networked Applications
Laboratory Sessions:
Java Object Model Implementation. Exception Handling Mechanism. Event-driven Programming in Java. Working with Distributed Objects using EMI. Creating and Using Beans. Using Swing GUI and Creating Application Frameworks. Illustrative Examples for Applying J2EE and J2ME Technologies.
Textbook:
Lecture Notes (in PowerPoint slides)
Reference Books:
Deitel and Deitel:
Java2 How To Program, 3rd ed., Prentice Hall, Upper Saddle River, NJ 07458 1999.
C. Thomas Wu:
An Introduction to Object-Oriented Programming with Java, 2nd ed., McGraw-Hill, 2001.
M. Smith:
Java: An Object-Oriented Language, McGraw-Hill, 2000.
C. S. Horstmann, G. Cornell:
Core Java2, Volume II - Advanced Features, Sun Microsystems Press, 2000.
D. Govoni:
Java Application Frameworks, John Willey & Sons, Inc., 1999.
D. Reilly, M. Reilly:
Java: Network Programming and Distributed Computing, Addison-Wesley, 2002.
P. Thaggard:
EJB 2.1. Kick Start, Sams Publishing, 2002.
G. Barish:
Building Scalable and High-Performance Java Web Applications Using J2EE Technology, Addison-Wesley, 2002.
The final grade will be computed from the following constituent parts: mid-semester exam (30%), final exam (45%) and labs and assignments (25%). Closed-book examinations are usually given in the mid-semester while closed-book and opened-book examinations are the options for the finals.