20554 Advanced Programming with Java

Credits: 4 advanced credits in Computer Science or in Software Engineering

Prerequisites: Students must fulfill all English requirements and take bibliographic instruction in the Library.

Required: Data Structures and Introduction to Algorithms (or Data Structures)

The course is based on Java: How to Program (9th ed.), by H.M. Deitel and P.J. Deitel (Prentice Hall, 2012).

Java is a modern programming language, which became well known primarily for its ease to use with the Internet. The aim of the course is to acquaint students with advanced programming principles using Java.

The course emphasizes object-oriented programming principles, multi-threaded programming, graphic user interface and program development in an Internet environment. It assumes high-level programming skills. The course is also recommended for students who have not learned Java in the introductory course. A short time is devoted to teaching language syntax at the beginning of the course.

Topics: Object-oriented programming; Creating a graphical user interface; Multi-threaded programming; Writing applications and applets; Communication and client/server systems.