Section outline

  • Assalamu 'Alaikum.

    I am Abu Sufian, welcoming you to Object Oriented Programming Course.  

    I hope we will learn together to enrich ourselves and together we can make this journey memorable. 
    May the Almighty grant you peace and happiness always.


    .





    • Instructor : Abu Sufian(ASN)

      Office : CSE office AB-04

      Office Hour   : Email for appointment

      Contact Number:  01878000675

      Email : sufiun.cse0414.c@diu.edu.bd




    • 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 Objective 

      • 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)

         


    • Grading Scheme

      Theory Class

      Lab Class

      Attendance: 7%
      Class Tests/Quizzes:  15% 
      Assignment: 5%
      Presentation (using video/ppt): 8%
      Midterm Exam: 25%
      Final Exam: 40%

      Lab Attendance: 10%
      Lab Performance Test: 25%
      Assignment + Viva: 10%
      Project: 25%
      Lab Final: 30%



    • ***************************************************************************************

      Click here for 

      Course Outline

      ***************************************************************************************




    • Navigation Link


      • Class Test: 
          1. Quiz - 1:  T1_PC B
          2. Quiz-  2:  T1_PC B

      • Assignment   
      • Presentation    
      • Mid Exam      
      • Final Exam


      Weeks to Go:

      WK1      WK2       WK3     WK4     WK5      WK6    WK7     WK8     WK9    WK10    WK11    WK12    WK13    WK14









    • OOP Assignment List







    • OOP Performance Test




    • Opened: Saturday, 10 September 2022, 2:30 AM
      Closed: Saturday, 10 September 2022, 3:15 AM



    • Quiz - 2




    • Topics of discussion

      1. Introduction and importance of Object Oriented Programming; Applications
      2. Basic concepts of OOP: Object, Class, Instance Variables and Methods

      Expected Learning Outcome

      1. Appreciate OOP
      2. Apply OOP general concept to model real life scenarios


    •  
      Week-01 Plan

      Week plan

      Topics

      Materials  

      Week-01: Lecture-01



      Introduction and importance of Object Oriented Programming; Applications

      =============== 


      Week-01: Lecture-02



      Basic concepts of OOP:
      Class, Object, Method, Instance variable


      Basic Features of OOP: Abstraction. Encapsulation, Ploymorphism and Inheritance

      ==========================



      Week-01: Lab - 01                              



      Basic Java Programming



    • Lab -01

    • Opened: Thursday, 13 October 2022, 11:30 AM
      Due: Thursday, 13 October 2022, 11:30 PM


    • Live discussion



    • Discussion on Week - 01


    • forum icon
      Discussion About The OOP Course Arrangement in BLC Forum
      Not available unless: You belong to any group
    • forum icon
      Discussion on the topics covered in Week-01 Forum
      Not available unless: You belong to any group



    • Topics of discussion

      1. Basic IO and String classes
      2. Array in Java
      3. Define method and working with methods

      Expected Learning Outcome

      1. OOP Programming using java
      2. Ability to define object with its behavior



    • Week-04 Plan

      Week plan

      Topics

      Materials  

      Week-04: Lecture-07

      1. Constructor in Java
      2. Constructor Overloading


      Slide:

      Lecture_6-Constructor and Constructor Overloading in Java

      ================================

      ==========================

      Source Code: Click Here


      Week-04: Lecture-08




      Week-04: Lab - 04


      1. Implementation of Methods in Java
      2. UML to JAVA Code
      3. String Class

      Slide:

      1. String Methods in Java

      ==========================

      ==========================

      Source Code: 

      1. Java Method
      2. Java String Class

      ===================================

      Lab Task - 4 : Click Here



    • Topics of discussion

      1. Inheritance in Java
      2. Overriding and Overloading

      Expected Learning Outcome

      1. Understanding on inheritance
      2. Problem solving using inheritance


    • Week-05 Plan

      Week plan

      Topics

      Materials  

      Week-05: Lecture-09

      Encapsulation in Java


      Slide:

      Lecture_7-Encapsulation in Java

      ================================



      ==========================

      Source Code:  Click Here
              UML Representation

      Week-05: Lecture-10


      Inheritance and

      Polymorphism in Java

      Slide:

      Lecture_8 - Inheritance and Polymorphism in Java

      ===============================


      ==========================

      Source Code: Click Here


      Week-05: Lab - 05


      1. UML to JAVA Code
      2. Setter and Getter methods


      Lab Task - 5 : Click Here





    • Course Survey before Mid term 



    • Polymorphism in C++ - MYCPLUS - C and C++ Programming Resources

    • Topics of discussion

      1. Polymorphism using Java
      2. Exercise for polymorphism
      3. Review discussion

      Expected Learning Outcome

      1. Problem solving using Java
      2. Writing code for multiple inheritance in Java


    •  
      Week-06 Plan

      Week plan

      Topics

      Materials  

      Week-06: Lecture-11


      Basics of UML

      Inheritance, Association, Aggregation and Composition

      Slide:

      Lecture_9-UML Basics_Inheritance_Association, Aggregation, Composition

      ================================



      Week-06: Lecture-12


      Abstraction in Java

      • Abstract Class
      • Interface


      Slide:

      Lecture_10-Abstraction in Java

      ================================


      ==========================

      Source Code: Click Here

       

      Week-06: Lab - 0 6

      • ArrayList


      Slide:

      Lecture_11-Java ArrayList

      ================================



      ================================

      Lab Task : 6




    • 1. Introduction to OOP

       2. Basic concepts: Object, class, instance variable, method

       3. Basic Features: Encapsulation, inheritance, polymorphism, abstraction

       4. Introduction and Basic of Java: keywords, identifiers, variables, modifiers etc

       5. Details of Class and Object (UML to Code) 

      6. Methods and Constructor (with Overloading]

       7. Encapsulation 

      8. Inheritance 

      9. Polymorphism 

      10. Basics of UML (Association, aggregation, composition, inheritance)





    • Topics of discussion  

      1. Exception Handling in Java
      2. Problem Solving using Exception Handling

      Expected Learning Outcome 

      1. Ability to apply exception handling in Java
      2. Problem solving using exception handling


    • Week-08 Plan

      Week plan

      Topics

      Materials  

      Week-08: Lecture-12

      Exception Handling in Java

      Slide:

      Lecture- 12: Exception Handling in Java


      ================================

      Recorded Video:

      ================================

      Exercise: Output Tracing


      Week-08: Lecture-13


      Slide:


      ================================

      Recorded Video:


      ==========================


      Source Code: 



       Week-08: Lab - 08


       


    • Opened: Tuesday, 15 November 2022, 12:00 AM
      Due: Monday, 21 November 2022, 12:00 AM

      submit video presentation individually maximum length 1 to 2 minute. Upload video on google drive and submit the share link.