Topic outline

  • Welcome to Object Oriented Programming


    Instructor Asif Uz Zaman Asif (AUZA)
    Office : Level 5, CSE Building, Daffodil Tower Extension
    Office Hour: Sunday (14:00/16:00), Thursday (14:00/16:00) or by appointment
    Cell Phone : +8801611202829
    Email: asifuzzaman.cse@diu.edu.bd
    Appointment in Google CalendarClick Here

    Welcome Information on Object Oriented Programming Course

    Welcome students to the this course where we are going to take a look at the object oriented approach todays programming using JAVA programming language.


    Online Java Compiler for OOP

    Course Rationale

    Philosophy of Object Oriented Programming (OOP); Advantages of OOP over structured programming; Encapsulation; Classes and objects; Access specifies; Static and non-static members; Constructors, destructors and copy constructors; Array of objects, object pointers, and object references; Inheritance: single and multiple inheritance; Polymorphism: overloading, abstract classes, virtual functions and overriding; Exceptions; Object Oriented I/O; Template functions and classes; Multi-threaded Programming. Memory models, the message based philosophy.


    Course Objectives

    • To be able to identify problems and apply object-oriented programming concept to build information system
    • To be able to apply UML notations used in object-oriented applications design.
    • To be able to implement common I/O operations using Java
    • To be able to implement event-driven graphical user interfaces (GUI) in Java

    Course Outcomes (CO’s)

    • CO1 Able to identify classes, objects, members of class and relationships among them needed for solving real-life problem and build software programs
    • CO2 Able to develop unified modeling language (UML) model and write computer programs using OOP principles to solve real-life problem
    • CO3 Able to apply knowledge of object oriented programming in software project


    Student Interest Survey


    Grading Scheme
    Theory Class Lab Class
    Attendance: 7%
    Class Tests/Quizes:  15% 
    Assignment: 5%
    Presentation (using video/ppt): 8%
    Midterm Exam: 25%
    Final Exam: 40%
    Attendance: 10%
    Lab Performance: 25%
    Lab Performance Test: 40%
    Lab Report: 25%
    [All assessment will be based on onsite/online situation]


    Textbook

    Reference Reading Materials


  • Week 1: Introduction

    Topics of Discussion

    • Introduction and importance of Object Oriented Programming; Applications
    • Basic concepts of OOP: Encapsulation, Inheritance and Polymorphism

    Expected Learning Outcome

    • Appreciate OOP
    • Apply OOP general concept to model real life scenarios

  • Week 2: OOP Implementation

    Topics of Discussion

    • OOP Implementation
    • Basic on Java programming
    • Course Project Team and discussion on presentation and deliverables

    Expected Learning Outcome
    • Understand OOP implementation 
    • Writing basic Java programs
    • Team formation for the course project

    • View
  • Week 3: Working with OOP

    Topics of Discussion

    • Class and Objects; Constructors
    • UML Modeling notations for class
    • Encapsulation applications
    • Project Discussion and execution plan

    Expected Learning Outcome

    • Create class and using objects
    • Selection of project topic by team

  • Week 4: Working with Polymorphism & Abstraction

    Topics of Discussion

    • Inheritance in Java; Overriding and Overloading

    Expected Learning Outcome

    • Understanding on inheritance
    • Problem solving using inheritance
  • Week 5: Working with Polymorphism & UML

    Topics of Discussion

    • Polymorphism using Java
    • Exercise for polymorphism
    • Review discussion 


    Expected Learning Outcome

    • Problem solving using Java
    • Writing code for multiple inheritance in Java

  • Week 6: Working with Polymorphism

    Topics of Discussion

    • Polymorphism in Java
    • Problem Solving using Polymorphism

    Expected Learning Outcome

    • Ability to design using polymorphism in Java
    • Problem solving using OOP

    • Opened: Monday, 22 November 2021, 7:30 PM
      Closed: Monday, 22 November 2021, 8:30 PM
      View
  • Week 7: Midterm Exam


    MidTerm Syllabus:

      Basic java, class, object, method, constructor, encapsulated, inheritance, polymorphism, abstract, interface, and UML diagram.

    • Opened: Friday, 26 November 2021, 9:00 AM
      Due: Friday, 26 November 2021, 11:30 AM
  • Week 8: Working with Exception Handling & Presentations

    Topics of Discussion

    • Exception Handling in Java
    • Problem Solving using Exception Handling
    • Course Project Presentation 2

    Expected Learning Outcome

    • Ability to apply exception handling in Java
    • Problem solving using exception handling

  • Week 9: Review on Polymorphism

    Topics of Discussion

    • Polymorphism and application in OOP
    • Problem Solving using Polymorphism

    Expected Learning Outcome

    • Problem solving using Polymorphism

  • Week 10: Review Week

  • Final Assessmnet