Skip to main content
TR

OBJECT ORIENTED PROGRAMMING

Course
ITEC313 - OBJECT ORIENTED PROGRAMMING
Department
Information Technologies - English - Undergraduate
Course Type
Course
Status
Required
Language
English
Credit
4
ECTS
7
T+P+L
3 + 0 + 2
Course Coordinator(s)
Asst. Prof. Dr. Dokun Iwalewa OLUWAJANA
Prerequisite
-
Keywords

Course Description

The objective of Object Oriented Programming is to identify the classes (including attributes, behaviours and methods), objects and their relationships by reading the problem descriptions, draw objects diagrams by looking to the defined problem description, implement Java class by looking at the given UML Class Diagram, use existing industry standard coding and formatting conventions, event mechanisms in Java, construct a GUI based applications using Java and Eclipse and debug those applications, technically identify the differences between classes, objects, inheritances, polymorphism, interfaces, aggregation, composition and abstract class. In addition, the issues of code re-use and software quality will be discussed and the use of inheritance will be shown through for code re-use.

OBJECT ORIENTED PROGRAMMING

Evaluation Tools (Active Term)

No evaluation items have been defined.

Course outcomes

  1. 01 Design and develop non-trivial programs using appropriate object oriented design and development methods
  2. 02 Use UML Class diagrams efficiently for object oriented software design
  3. 03 Apply principles of object oriented programming for flexibility, re-use and maintenance purposes
  4. 04 Practice layered architecture model and develop gradually expanding object oriented programs

Course Syllabus

Week Topic
Week 1 What is object oriented programming? The difference between Object Oriented Programming (OOP) and structured programming?
Week 2 Java Basics, Swing Library, Variables and I/O, Dialog Boxes
Week 3 Structured Programming Components: Sequence (Functions), Selection (Decision Making) and Iteration (Loops)
Week 4 GUI Programming: JFrame Class, Labels, Buttons, TextBoxes
Week 5 GUI Programming: Checkboxes, RadioButtons, ComboBoxes
Week 6 GUI Programming: JMenu, JMenuItems, JMenuBar, Picture Boxes, Customizing Components
Week 7 Unified Modelling Language (UML): class definitions, static keywords and class relations.
Week 8 Midterm Exam
Week 9 Objects and Classes
Week 10 Multiple Forms
Week 11 Layered Architecture, Auxiliary Classes
Week 12 Inheritance and Multiple Inheritance and Abstract classes
Week 13 Interfaces and Polymorpism
Week 14 Revision and Exercises
Week 15 Final Exam

Reference Books & Course Materials

  1. 01 Java for Students, 5th Edition, Pearson, 2010
  2. 02 Java How To Program, 9th Edition, Deitel P & Deitel, 2011
  3. 03 Head First Java, 2nd Edition, O'Reilly Media, 2005

Learning Outcomes

  1. L01 Understand the basics of the Java programming language. Explain the principles of Object-Oriented Programming. Set up a development environment for Java. SOLO 3
  2. L02 Define and declare classes and objects. Implement constructors and methods. Understand the concept of encapsulation. SOLO 4
  3. L03 Implement inheritance in Java. Understand method overriding and dynamic method dispatch. Demonstrate polymorphic behavior. SOLO 4
  4. L04 Create and use abstract classes. Implement interfaces and multiple inheritance. Recognize the importance of abstraction in software design SOLO 4
  5. L05 Implement try-catch blocks. Understand exception hierarchy. Develop custom exceptions. SOLO 4
  6. L06 Read and write files using Java I/O streams. Handle file-related exceptions. SOLO 4
  7. L07 Use ArrayList, HashMap, and other collection classes. Implement generics for type-safe collections. SOLO 4
  8. L08 Understand and apply design patterns like Singleton, Factory, Observer, and MVC SOLO 4
  9. L09 Use JDBC to interact with relational databases. Execute SQL queries and handle results. SOLO 4
  10. L10 Create and manage threads. Understand synchronization and thread safety SOLO 5
  11. L11 Create interactive Java applications with GUIs. Handle user events and user interface components. SOLO 5

Program Outcomes

  1. P01 Create a user interface in a contemporary object-oriented language to allow users to access business data
  2. P02 Identify and analyze user needs and take them into account in the selection, creation, integration, evaluation and administration of computing-based systems
  3. P03 Analyze common business functions and identify, design, and develop appropriate information technology solutions
  4. P04 Design and develop software solutions for contemporary business environments by employing appropriate problem-solving strategies
  5. P05 Configure and administer database server to support contemporary business environments.
  6. P06 Administer or mange a relational database for a small to medium size company
  7. P07 Be able to effectively integrate IT-based solutions into the user environment
  8. P08 Understand professional, ethical, legal, security and social issues and responsibilities
  9. P09 Be able to apply effective communication skills consistent with the professional environment
  10. P10 Be able to apply effective collaboration skills in teamwork consistent with the professional environment

Po-Lo Matrix

LO P01 P02 P03 P04 P05 P06 P07 P08 P09 P10 Average
L01 2 3 2 3 0 0 0 0 0 0 1
L02 3 3 3 4 0 0 0 0 0 0 1.3
L03 4 3 3 4 0 0 0 0 0 0 1.4
L04 4 3 3 4 0 0 3 0 0 0 1.7
L05 3 0 0 4 0 0 0 4 0 0 1.1
L06 0 0 3 3 0 0 0 0 0 0 0.6
L07 3 3 4 4 0 0 3 0 0 0 1.7
L08 4 3 4 4 0 0 4 0 0 0 1.9
L09 4 3 4 4 4 4 4 0 0 0 2.7
L10 3 0 0 4 0 0 0 0 0 0 0.7
L11 4 3 4 4 0 0 4 0 4 0 2.3