Three 50 minutes lectures, One 180 minutes lab per week (3-3-4)
Designation: Required Course
Course Level: Undergraduate
Prerequisite(s) by Topic:
- Fundamental programming constructs.
- Algorithms and problem-solving.
- Fundamental data structures.
- Declarations and types.
- Object-oriented programming.
Advanced object-oriented programming; inheritance; polymorphism; abstract classes and interfaces, container and collection classes, packages, object-oriented design, software modeling, event-driven programming, recursion, use of stacks, queues and lists from API, searching and sorting.
Absolute Java, 2nd Edition, Walter Savitch, Addison-Wesley, 2006.
- Develop solutions for a range of problems using object-oriented programming
- Apply divide and conquer strategy to searching and sorting problems using iterative and/or recursive solutions.
- Design and implement simple GUI applications
- Write simple multi threaded applications.
- Use API in writing applications.
- Inheritance and Polymorphism
- Abstract Classes and Interfaces
- Nested Classes
- Java Virtual Machine
- Algorithms, Problem Solving and Recursion
- Searching and Sorting
- Computer Graphics and Event Driven Programming