0% found this document useful (0 votes)
28 views8 pages

OOP Syllabus Haftu and Bekalu 2

The document outlines the course details for 'Object Oriented Programming' at Dire Dawa University, including course objectives, content, assessment methods, and grading systems. It covers key topics such as Java programming, object-oriented concepts, inheritance, polymorphism, and GUI development. The course is compulsory for second-year students and includes both theoretical and practical components with specified workloads and resources.

Uploaded by

sagnimamo618
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
28 views8 pages

OOP Syllabus Haftu and Bekalu 2

The document outlines the course details for 'Object Oriented Programming' at Dire Dawa University, including course objectives, content, assessment methods, and grading systems. It covers key topics such as Java programming, object-oriented concepts, inheritance, polymorphism, and GUI development. The course is compulsory for second-year students and includes both theoretical and practical components with specified workloads and resources.

Uploaded by

sagnimamo618
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

Dire Dawa University

College of Electrical and computer Engineering


Department of Electrical and computer Engineering

COURSE OUTLINE
Program Regular
Course Information

Module Name Computer architecture and programing


Module Number 15
Module Team Leader N.N
Course Title Object oriented programming
Course Code ECEG2101
ECTS 5
Students’ Workload Lecture Hrs: 2 Lab Hrs: 3 Tutorial Hrs: 0
Home Study: 5
Course Type Compulsory
Prerequisite Course code Computer programming
Academic Year 2017
Semester II
Target Group 2nd year
Venue [Class Room]
Instructor Information

Name Haftu .M and Bekalu.M


Office CECE building
Office [consultation] Hours
Address [email protected] & [email protected]
Technical Assistant Information

Name
Office
Office [consultation] Hours
Address
Course Description
Course-level learning objectives

After successfully completing this course the student should be able to :-


 Differentiate procedural Vs object oriented programming paradigm.
 List some object oriented programming languages.
 Identify java reserved keywords.
 Write a java program.
 Compile and run a Java program.
 Describe different concepts and terminologies used in object oriented programming
paradigm
 Mention the difference and relations between classes and objects
 Explain the advantages of object-oriented design techniques including encapsulation,
abstraction, inheritance, polymorphism, and reusability.
 Develop some classes of real world objects.
 Create super classes and subclasses.
 Identify the super-class members which can be inherited by the subclass.
 Identify the real world application of object oriented programming languages.
 Design simple GUI application using Swing, JavaFX.

Chapter-level learning objectives


After successfully completing this chapter the student should be able to :-
 Define the phrase object oriented programming.
 Identify the difference between structured, procedural programming and OOP.
 Explain the basic futures of object oriented programming.
 Define java as a programming language.
 Demonstrate Java syntax, including variables, data types, operators, and control structures
(loops, conditionals).
 List common integrated development environments (IDEs) used for java programming.
 Create simple Java program.
 Compile and run java programs in selected IDE (example Eclipse).
 Differentiate Java class and main class.
 State predefined classes in java.
 Demonstrate how input/output works in java.
 Create Java programs with conditional statements.
 Create Java programs with loops.

1
 Describe the concept of array in programming.
 List different types of array structures.
 Define and declare arrays in Java.
 Define the term class in java programming.
 Describe an object in the context of Java programming.
 Identify the components of a class, including fields (variables), methods, constructors, and
access modifiers.
 Create a class in Java and instantiate objects from it using the new keyword.
 Differentiate global variables and local variables within a class.
 Demonstrate how to create a method in java program.
 Demonstrate how to call methods in a class.
 Demonstrate the use of constructors to initialize objects when they are created.
 Describe the use of the static and final key words in java program.
 Define the term inheritance in object oriented programming.
 Explain the different types of inheritances
 Explain the advantage of inheritance in object oriented programming
 Identify the access modifier which can be used in inheritance
 Differentiate the super class and subclass
 Remember the keyword that can be used to create super class subclass hierarchy.
 Create parent and child classes in a java programming language
 Access and reuse data members and methods from a parent class in the child class.
 Override parent class methods in the child class to provide specific implementations.
 Apply inheritance to minimize code duplication and promote reusable and modular code
design.
 Design and implement practical solutions using inheritance, such as creating class hierarchies
for animals, vehicles, or employees.
 Define the term polymorphism in object oriented programming.
 Explain the different types of inheritances
 Explain the advantage of inheritance in object oriented programming
 Identify the access modifier which can be used in inheritance
 Differentiate the super class and subclass
 Remember the keyword that can be used to create super class subclass hierarchy.
 Create parent and child classes in a java programming language
 Access and reuse data members and methods from a parent class in the child class.
 Override parent class methods in the child class to provide specific implementations.
 Apply inheritance to minimize code duplication and promote reusable and modular code
design.
 Design and implement practical solutions using inheritance, such as creating class hierarchies
for animals, vehicles, or employees.
 Define what exceptions are in Java.

2
 Explain the importance of exception handling in robust software development.
 Identify the difference between checked and unchecked exceptions.
 Demonstrate how to throw exceptions manually using the throw keyword to indicate error
conditions.
 Implement basic exception handling using try, catch, and finally blocks to manage runtime
errors gracefully.
 Handle multiple exceptions in a single try block by using multiple catch clauses in a single java
program.
 Distinguish between the throws and throw keywords and apply them to delegate exception
handling to calling methods.
 Evaluate the best practices for exception handling, such as not using exceptions for control
flow, and apply them to real-world programming scenarios.
 Identify the components of a Java GUI application and explain how the Swing library is used
to create graphical user interfaces.
 Implement basic GUI layouts using Swing components such as JFrame, JButton, JLabel,
JTextField, and JPanel.
 Construct a graphical interface by arranging and organizing components using layout managers
like FlowLayout, BorderLayout, and GridLayout.
 Handle user interactions with GUI components by implementing appropriate event listeners,
such as ActionListener, MouseListener, and KeyListener.
 Implement action handling in response to button clicks, text input, mouse movements, and
keyboard events.
 Develop interactive GUI applications by incorporating advanced components such as
JComboBox, JList, JTable, and JMenuBar.
 Evaluate different layout managers and select the most appropriate one for organizing complex
user interfaces in Java.

Course Contents and Schedule

Week Contact Chapter – topics, subtopics, sub-sub Reading Materials and


Hours topics Expected Assessments

3
1 2 Chapter One: Introduction to the OOP
paradigm

 Comparison between structured,


procedural programming and OOP.
 Basic concepts: abstraction,
encapsulation, information hiding.
 Program reusability and extensibility

2-3 4 Chapter Two: Introduction to Java


elements

 Introduction to the Java development


environment variables and their
declaration
 Introduction to classes and objects
 Input/output
 Conditional statements and loops
 Arrays

4-6 6 Chapter Three: Classes and Objects

 Classes, objects
 Methods
 Constructors
 The Static and final key words
 Constructors and destructors
 Using the UML class and
Composition diagrams

7-8 4 Chapter Four: Inheritance

 Introduction
 Super-classes and Subclasses
 Protected members
 Super keyword
 Constructors in Subclasses

9- 10 4 Chapter Five: Polymorphism and


Interfaces

 Introduction
 Polymorphic example

4
 Abstract Classes
 Final Methods and Classes
 Method overloading and method
overriding
 Introduction to interfaces
 Abstract Classes implementing
interfaces
 Derived interfaces

11 - 12 4 Chapter Six: Exception Handling

 Introduction by example
 Try- catch mechanism
 Exception classes
 The finally Block

13 - 14 4 Chapter Seven: GUI and Event Driven


Programming

 Introduction
 Overview of Swing Components
 Swing vs .Awt
 Introduction to Event Handling
 Common GUI Even Types and
Listener Interfaces
 Using the swing components
(JButton, JTextfield, JListetc)

Course Assessment Methods

Continuous Assessment Weight Week of Class Online


Method assessment assessment assessment

Quiz - 1 5 3 Class
Quizzes Quiz - 2 5 5 Online
Mid 20 Based on the Online
Tests mid exam
schedule
Lab Exam-1 10 9 Class
Assignments Assign - 1 10 8 Online
Projects and Project -1 10 10 Class
presentation

5
Final Examination 40 Based on the Final Exam Schedule

Grading System

 Fixed grading system based on DDU senate legislation.

Texts and References Materials


 Text book:
Java How to Program, 6th edition, H.M.Deitel- P.J.Deitel,
 Pearson Education, 2005Reference book s
o Reference 1: Java, An Introduction to Problem Solving and Programming, 5th ed. W.
Savitch and F. Carrano, Prentice Hall, 2008
o Reference 2: Absolute Java, 5th Edition, W.Savitch, Addison Wesley,2012
 Course website

Class Room Polices


 Class Attendance, Class Participation, E- learning, Academic dishonesty, Missing Assessment
and Late Work Polices.

E- learning Policy
Computer Requirements
This is a blended course; therefore, it requires a computer with internet access and the following
technologies:
 Web browsers (Chrome preferable)
 Adobe Acrobat Reader (Recommended)
 Microsoft Office
 Reliable broadband internet connection (DSL or cable) to stream videos.
 Note: A smartphone, iPad, Chromebook, etc. may not be sufficient for completing your work.
While you will be able to access workshop content with mobile devices, you’ll want to use a
computer for some of the assignments.
Many (but not all) of the files, articles, and videos can be downloaded if there are times you will not
have internet access.

Preferred Communication
Course content questions or comments: All communication about the course content can go
directly to [email protected]. Individual facilitators may also give separate communication
guidance.

Tech support questions: All communication about tech support issues can go directly to
[email protected].
Live Office Hours
6
These informal live office hours can be found on the Home Page and are accessible from a Zoom link.
You can connect when you have questions or if you want to talk about what you’re learning with your
facilitators.

Participant Success
To be successful:
 Check the course daily,
 Read and respond to course email messages as needed,
 Complete assignments by the due dates specified,
 Communicate regularly with your instructor and classmates.

Submitting Assignments

 Submit all the assignments based on the due dates specified.

Grading Regarding the Online Assessment


This workshop uses weighted grading.

Track Your Progress


You are encouraged to keep track of your own progress in this workshop by using the checklist provided
above as well as checking your grades regularly.

You might also like