Java Programming (COMP 228)

Building on object-oriented programming fundamentals, this course focuses on component-based application development and database connectivity using the Java programming language.

Course Description

Building on fundamentals of Object-Oriented programming, this course covers Component-based Application Development and Database Connectivity using the Java programming language. Coursework emphasizes advanced object oriented features, how to create complex GUI applications with JavaFX, interacting with the databases using JDBC, concurrency, and Java collections framework.

Weekly Topics

  1. Overview of the Java platform, program structure, and development environment
  2. Classes, objects, instance variables, and instance methods
  3. Methods, static members, Java API packages, and method overloading
  4. Advanced object-oriented concepts and class design
  5. Inheritance and code reuse
  6. Polymorphism, abstract classes, and interfaces
  7. GUI programming with Swing; event handling and layout managers; midterm assessment
  8. Advanced Swing components and layout management
  9. JavaFX fundamentals and lambda expressions for event handling
  10. Exception handling and introduction to database access using JDBC
  11. Database updates, row manipulation, and RowSet interfaces
  12. Multithreading and concurrent execution in Java
  13. The Java Collections Framework
  14. Final assessment

Course Materials

Mandatory Text

Deitel, P., & Deitel, H. Java How to Program (Early Objects) (11th ed.). Pearson, 2017.

Supplementary Texts

Java Development Resources

Official Documentation and Tutorials

Practice and Problem Solving

Development Tools

Supplementary Reading and Community Resources