T4 14011102-4 Object Oriented Programming
T4 14011102-4 Object Oriented Programming
T4 14011102-4 Object Oriented Programming
2
A. Course Identification
1. Credit hours:3
2. Course type
a. University College Department X Others
b. Required X Elective
3. Level/year at which this course is offered: level 4/ 2nd year
4. Pre-requisites for this course (if any):
14011101-4 Computer Programming
3
data abstraction, encapsulation, and polymorphism
3. Students will learn how to design applications using object-oriented concepts
4. Students will appreciate the benefits of code reuse by learning how to make use of off-the-
shelf Java libraries
3. Course Learning Outcomes
Aligned
CLOs
PLOs
1 Knowledge and Understanding
1.1 Understand object oriented concepts including – classes, objects, K1
inheritance, data abstraction, encapsulation, and polymorphism
1.2 Learn how to design larger programs using object oriented design K1
paradigm
1.3 Appreciate the benefits of code reuse by learning how to make use of K1
off-the-shelf Java libraries
2 Skills :
2.1 Ability to use and explain the object oriented concepts of instantiation, S1
encapsulation, inheritance, abstraction, and polymorphism.
2.2 Ability to understand and analyze moderately complex algorithms S1
2.3 Ability to design and construct moderately complex applications using S2
the advanced OO features such as interface, exception handling, and
generics.
2.4 Ability to use object-oriented design notations (UML class diagrams S2
and relationships) to model problem solutions.
2.5 Ability to use library classes, generic lists, and iterators in problem S2
solutions.
3 Values:
3.1 Work effectively as a member of a group V2
C. Course Content
Contact
No List of Topics
Hours
Introduction to programming paradigms
1 Object-oriented programming concepts 6
Object-oriented modeling and UML
Classes and objects: the building blocks
Declaring classes and creating objects, static and instance members of a
2 class, class constructors, scope of data members in a class, reference and 6
primitive data types, the use of this reference and the null value (garbage
collection)
3 Classes and objects: a deeper look 6
Encapsulation and data hiding, getter and setter methods, UML class
diagrams and relationships, enumerations, nested and inner classes,
immutable objects and classes, shallow and deep cloning, wrapper classes:
boxing and unboxing, passing object to and returning object from methods,
4
the method finalize
Generic lists: the ArrayList<T> and Vector<T> classes, list iteration, for-
4 6
each
Inheritance and code reusability, protected members, extends classes,
overriding vs. overloading, access superclass constructors and methods,
5 6
the Object class and its toString() and equals() methods, prevent class
extending & method overriding
Polymorphism and dynamic binding, upcasting and downcasting, casting
6 12
objects and the instanceof operator
7 Abstract classes and interfaces 12
Exception handling: basic exceptions, throwing and catching exceptions,
8 creating customized exceptions, rethrowing exceptions, performing 12
.cleanup with finally
9 Generic classes, interfaces, and methods 6
Total 66
5
Code Course Learning Outcomes Teaching Strategies Assessment Methods
lists, and iterators in problem Discussion, labs, projects, assignment
solutions. assignments evaluation
2.6 Perform a task with minimum Lectures, Group Quiz, lab evaluation,
assistance Discussion, labs, projects, assignment
assignments evaluation
3.0 Values
Work effectively as a member of a Lectures, Group Project
3.1
group Discussion
1.Learning Resources
Intro to Java Programming, Comprehensive Version, 10th Edition, Y.
Daniel Liang, Pearson, 2014, ISBN-13: 978-0133761313.
Required Textbooks
Java How To Program (Early Objects), 10th Edition, Dietel and
Dietel, Pearson, 2015, ISBN-13: 978-0133807806.
Absolute Java, 6th Edition, Walter Savitch, Pearson, 2016, ISBN-13:
Essential References 978-0134041674.
Materials Java Programming, 8th Edition, Joyce Farrell, 2016, ISBN-13:
9781285856919.
Other Learning
The main textbook CD
Materials
6
2. Facilities Required
Item Resources
Accommodation Lecture room (max 40 students)
Classrooms, laboratories, demonstration ( Computer lab (max 20 students)
).rooms/labs, etc Internet connection
Overhead projector and smart board.
Technology Resources
AV, data show, Smart Board, software, (
Integrated Development Environment (e.g., NetBeans,
).etc Eclipse, JBuilder).
Java Development Kit (JDK)
Other Resources
Specify, e.g. if specific laboratory (
equipment is required, list requirements or
)attach a list