Required Text(s)

Introduction to Java Programming and Data Structures, Comprehensive Version (11th Edition), Y. Daniel Liang (html). 

Buy From Pandora : (html


Computer Science An Interdisciplinary Approach, Robert Sedgewick, Kevin Wayne (html). 



Recomended Text(s)

- Computer Science An Interdisciplinary Approach Robert Sedgewick, Kevin Wayne, Pearson, 2016.
- Java Software Solutions, Global Edition, 9/e, Lewis & Loftus, Pearson, 2019.    
- Java: An Introduction to Problem Solving and Programming, Global Edition, 8/e, Savitch,  Pearson, 2019.
- Core Java Volume I and II --Fundamentals, 11/e, Horstmann, Pearson, 2019.
- Java How to Program, Early Objects, Global Edition, 11/e, Deitel & Deitel, Peason, 2018.
- Introduction to Programming Using Java, Eighth Edition Version 8.0, 2018 David J. Eck (html)

Meeting Times:

- Wednesday 9:00 - 12:00,  Location: Online


- Lab Section I :
- Lab Section II :
- Lab Section III:
- Lab Section IV :


Evaluation Tool Weight in %
Programming Assignments      12 
Labs (*) 10
In-term Exams
- Quizes
- Midterm
Final 40

(*) Laboratory assignments should be submitted in order to get laboratory grade.

Tentative  Course Outline:

1 Introduction to Computers, Programs, and Java
2 Elementary Programming
Mathematical Functions Characters, and Strings 
3 Loops
4 Single-Dimensional Arrays
Multidimensional Arrays
5 Objects and Classes
Object-Oriented Thinking
6 Inheritance and Polymorphism
Exception Handling and Text I/O
7 Abstract Classes and Interfaces
JavaFX Basics
8 Event-Driven Programming and Animations
9 Exam Week
10 JavaFX UI Controls and Multimedia
Binary I/O
11 Recursion
12 Lists, Stacks, Queues, and Priority Queues
Sets and Maps 
13 Implementing Lists, Stacks, Queues, and Priority Queues
14 Review

Course Syllabus in PDF ()