Approved OOP Scheme of Work
Approved OOP Scheme of Work
Course Description:
This course explores the concepts of object-oriented programming. It provides students with basic skills required for building software based on the object-oriented
paradigm using selected language.
Learning Outcomes
At the end of this course, students should be able to:
1. Explain the principles of the object-oriented programming paradigm specifically including abstraction, encapsulation, inheritance, and polymorphism
2. Demonstrate the understanding and application of Object-oriented design techniques for software development using a programming language like Java
4. Design, develop, test, and debug programs using object-oriented principles in conjuncture with an integrated development environment
5. Construct appropriate diagrams and textual descriptions to communicate the static structure and dynamically applied to an object-oriented solution.
Mode of Assessment
Continuous assessments tests 20%
Total 100%
3. Java • Plan decision-making logic These statements are crucial Student should be able to use • Class • Overhead 3. 3 hrs
programming • Make decisions with the if and for implementing logic that decision-making statements to help • Discussions projectors
basics- Decision if…else statements makes the program more your program decide what actions • Demonstrations • Whiteboard
Making • Use multiple statements in if and dynamic and responsive to to take based on certain conditions, • Presentations
if…else clauses different scenarios. allowing for dynamic and flexible
4. Java • Describe the loop structure Student will learn how to use Student should be able to • Class • Overhead 4. 3 hrs
programming • Create while loops loop to facilitate iteration of accurately code, test and debug • Discussions projectors
basics- Looping • Create for loops the statements till the loops • Demonstrations • Whiteboard
• Create do…while loops specified condition becomes • Presentations
false.
6. Objects, • Learning about Classes and Student would understand the • Creating a Class • Class • Overhead 6. 3 hrs
Classes, and Objects concept of Classes and • Creating instance methods in a • Discussions projectors
packages • Creating a Class Objects class • Demonstrations • Whiteboard
• Creating instance methods in a • Declaring Objects and using • Presentations
class their methods
• Declaring Objects and using
their methods
• Describe packages
7. Arrays • Declare an array Developing a positive • Physically writing code to • Class • Overhead 7. 3 hrs
• Initialize an array attitude towards using arrays declare an array in a • Discussions projectors
• Use variable subscripts with an for efficient data handling programming language. • Demonstrations • Whiteboard
array and understanding their value • Coding to initialize an array • Presentations
• Declare and use arrays of in programming. with specific values or default
objects values.
• Implementing and
manipulating array elements
using index values in code.
• Types of Operators That Can Be efficiency, and user • Actively coding to utilize
Overloaded experience. different string methods (e.g.,
concatenation, substring
extraction, searching,
replacing) in practical
programming tasks.
9. CAT CAT CAT CAT CAT CAT 9. CAT
CAT
10. Constructor • An Introduction to Using Developing a positive attitude • Writing code to define • Class • Overhead 10 3 hrs
Constructors towards using constructors constructors with parameters • Discussions projectors
• Create and call constructors with effectively to ensure that to initialize object attributes, • Demonstrations • Whiteboard
parameters objects are properly and creating instances of • Presentations
• Use the ‘this’ reference initialized and to maintain the objects by passing arguments
integrity of the code. to these constructors.
• Implementing the ‘this’
reference in code to refer to
the current object, allowing for
clear and unambiguous access
to the object's instance
variables and methods.
11. Inheritance • Describe the concept of Developing a positive • Writing code to create a • Class • Overhead 11 3 hrs
and and visibility inheritance attitude towards the use of derived class that extends a • Discussions projectors
modifiers • Derived class and base class inheritance to create more base class, incorporating • Demonstrations • Whiteboard
• Extend classes
12.. • Introduction to Encapsulation • Developing a positive • Writing code to create and • Class • Overhead 12 3 hrs
Encapsulation • Access Modifiers attitude towards using implement getter and setter • Discussions projectors
and • Getter and Setter Methods encapsulation to protect methods, providing controlled • Demonstrations • Whiteboard
polymorphism • Introduction to Polymorphism data and maintain a clean access to private fields while • Presentations • Flipcharts
• Method Overloading (Compile- and clear class interface, maintaining encapsulation.
• Appreciate the advantages of maintaining smooth program • Implementing code that throws
exception handling execution and user and catches multiple types of
READING LIST
1) Farell, J. (2023). Java Programming, 6. Auflage, Course Technology, Cengage Learning, USA.
2) Murach, J. (2015). Murach's Java Programming. Mike Murach & Associates.
3) Charatan, Q., & Kans, A. (2006). Java in two semesters. McGraw-Hill.
4) Harvey M. Deitel and P. J. Deitel (2007). Java How to Program, 7th Edition-Prentice Hall
5) Malik D. S. (2003). Java Programming: From Problem Analysis to Program Design. Course Technology, Cengage Learning, USA.
6) Liang, Y. D. (2003). Introduction to Java programming. Pearson Education India.
7) Object Oriented Programming through Java, P. J. Radha Krishna, Universities Press.
8) Thinking in Java, Bruce Eckel, PE
9) Programming in Java, S. Malhotra and S. Choudhary, Oxford Universities Press.