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:

- Section I: Monday 9:00 - 12:00,  Location: CZ_12
- Section II: Monday 13:30 - 16:30,  Location: CZ_211


- Lab Section I : Tuesday 11:00-13:00, TA: Asmma Samy Mohamed Mahmoud
- Lab Section II : Wednesday 9:00-11:00, TA: Khaled Algammal
- Lab Section III: Wednesday 11:00-13:00, TA: Khaled Algammal
- Lab Section IV : Friday 9:00-11:00, TA: Asmma Samy Mohamed Mahmoud


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

(*) %70 attendance to laboratories is required, otherwise students will fail from the course. 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 ()