CS2810 OOAIA January 2020


Slides
  1. OO Motivation
  2. Classes and Objects
  3. Polymorphism
  4. Inheritance
  5. Functors
  6. Templates
  7. Streams
  8. STL
  9. Exceptions
  10. Type Traits
  11. Case Study
Evaluation pattern:
Assignments 50% + in-lab exams 50%
Number of assignments = 10
Number of in-lab exams = 2

Moodle
First-day Handout
TCF:

  • Course: 0.83 (institute mean: 0.79)
  • Instructor: 0.81 (institute mean: 0.79)
  • Technical Staff: 0.80 (institute mean: 0.82)
  • Full Report

    P slot [Mondays at 14:00 in CS26 and DCF]
    TAs: Ajay, PK, Milind, Sarthak, Priya, Shubham, Jash, Vrushabh, Shivaditya, Shivani
    Instructor: Rupesh Nasre.

  • Schedule
    LabDateObjectiveContestRemarks
    A1January 13OO MotivationProblem statementPractice
  • hello.c, hello.cpp, hello.java
  • A2January 20Classes, ObjectsContest5%
  • constructor, destructor
  • default argument constructor
  • public, protected, private
  • A3January 27PolymorphismContest5%
  • function overloading
  • operator overloading: one, two, three
  • overloading binary operator
  • overloading commutative plus
  • overloading unary
  • overloading <<, >>
  • overloading cout with friend
  • overloading subscript
  • overloading ->
  • overloading new/delete
  • A4February 3Inheritance + NumbersContest5%
  • Base and derived classes
  • Multiple Inheritance
  • Inheritance and Access
  • Diamond Inheritance
  • Virtual Methods
  • Virtual Destructor
  • Virtual: Two levels
  • A5February 10Templates + Stacks + QueuesContest5%
  • Basic Templates
  • Methods outside class: Erroneous, Correct
  • Group Implementation
  • Multiple Arguments
  • A6February 17Functors + SearchingContestPractice
  • with Aggregates
  • Function with Arrays
  • Functor with Arrays
  • Parameterized Functor
  • Multiple ways to print
  • A7February 24Streams + External / Incremental SortingContest5%
  • Basic cin, cout
  • Ignoring input
  • Issue with integers and strings
  • File reading: Wrong, Correct
  • getline
  • cp
  • Formatted output: Wrong, Correct
  • A8March 2Lab ExamContest25%
    A9March 9Exceptions + Graph AlgorithmsContest 5%
  • try-catch
  • Catching Exception from Caller
  • Multiple / Nested try-catch
  • Uncaught exceptions
  • throw
  • User-Defined Exception
  • Cascaded catch
  • A10March 16Case Study + Graphs + GreedyContest5%
    --March 23No Lab Wednesday timetable
    A11March 30Graphs + Dynamic ProgrammingContest5%
    --April 6No Lab Holiday
    A12April 13String MatchingContest5%
    A13April 20MatricesContest5%
  • Basic Type Traits: is_integral
  • is_base_of
  • Error due to type
  • Custom Typetraits: is_swappable
  • Static Assertion
  • Rank
  • is_same
  • Custom Typetraits: Algorithm Selection
  • Custom Typetraits: Linear versus Binary Search
  • A14April 27Lab Exam25%