Object Oriented Programming • TIT-244
  - Course Instructor: Dr. Ratnesh Srivastava.
 
Click on the links to start the direct download (for Windows x64).
  - Visual Studio Code: IDE / Code editor of choice. Allows to install “extensions” for various languages and tools, without needed separate IDE for every programming language. Performant & lightweight. Available for all desktop platforms. Syntax highlighting works even without these extensions. Visual Studio Code is from Microsoft & available under open-source license.
 
  - Python: Python interpreter/runtime for running Python scripts/programs & Python Package Manager (pip) for installing external libraries (
python/python3/pip/pip3). 
  - TDM GCC: A minimal GNU C/C++ compiler toolchain for Windows (
gcc/g++). 
  - Java Development Kit: Java runtime & compiler (
java/javac). 
  - Git for Windows (optional): Source-code management & version control (
git). 
Assigments
  - Assignment 1: Write a program to take a list of 10 farmers, fruits they sell, their cities & the quantity of fruits they have as input. Save the data to notepad before & after sorting based on quantity in tabular manner. Also perform search operation based on farmers’ name.
 
  - Assignment 2: Write a program to take quantity & quality of fruits Mango, Apple & Papaya as input. Quality may be good, bad or average. If entered quantity of fruit is greater than 1000, store it as half. Perform search for a given fruit with given quality.
 
  - Assignment 3: There are four orchards, namely A, B, C & D with fruits in them as Apple, Litchi, Mango, Apple respectively. The qualities of the fruits in the orchards are good, good, good & bad respectively. Based on that: 1. The available orchards in a tree-view. 2. Search for a given fruit in the available orchards after taking input from the user & print the tree.
 
  - Assignment 4: Take or make a map of any building & generate a graph.
 
  - Assignment 5: Take a map provided as a graph & display all the subtrees of connected points.
 
  - Assignment 6: Enter entry point & goal point & produce the matching subtree of the graph.
 
  - Assignment 7: Give the weightage for each edge of nodes, and produce the shortest path from start to end node.
 
  - Assignment 8: Write a program to demonstrate the use of all keywords made for exception handling.
 
  - Assignment 9: Write a program to demonstrate the use of only 
throw keyword. 
  - Assignment 10: Write a program to demonstrate the use of only 
try & catch keywords. 
  - Assignment 11: Write a program to demonstrate the use of only 
throws keyword. 
  - Assignment 12: Write a program to withraw money from a bank account, if the withdrawn money is greater than the balance, then it throws 
NoMoneyException. 
Classroom Discussion
  - Introduction, programming & programming languages, objects & types of objects.
    
      - Tags: 
programming, object. 
    
   
  - Object, data-types, user-defined data types, object & instances, references & pointers, fundamental concepts of OOPs, abstraction.
    
      - Tags: 
object, data-types, class, struct, pointer, references, fundamentals, abstraction. 
    
   
  - Encapsulation, access-modifiers, inheritence, types of inheritence.
    
      - Tags: 
encapsulation, access-modifiers, inheritence, generalization, composition, aggregation. 
    
   
  - Inheritance, polymorphism, run-time-polymorphism, compile-time-polymorphism, diamond-problem.
    
      - Tags: 
inheritence, overriding, overloading, diamond-problem, abstract, interface. 
    
   
  - Problem: There are employees of two kinds A & B. A is a government employee and B is a private employee. A gets a basic salary & DA, whereas B gets a basic salary & gets a fixed commision for the given amount of sales. Write a program to show the name & total salary of employee of each kind. Let, 
Kritika is category A employee & Sumit is a category B employee.
    
      - Tags: 
interface, runtime-polymorphism, uml-diagram. 
    
   
  - Problem: A company has its own customers, who place orders for a particular product with its cost. Company also has its own stores for different products. Company delivers the products to the customers from the stores by a delivery boy. Write a suitable program using object oriented programming language.
    
      - Tags: 
object-relationship, one-to-one, many-to-one, references. 
    
   
  - Object Relations, SOLID Principles, Tight-Coupling
    
      - Tags: 
one-to-one, many-to-one, unidirectional, bidirectional. 
    
   
  - Exceptions & Errors, Compile-Time & Run-Time Exceptions, Exception Handling Keywords, Exception Chaining
    
      - Tags: 
exception, error, compile-time, runtime. 
    
   
  - Thread, Mutual-Exclusion, Lifecycle Of A Thread, Publish-Subscribe Algorithm, Synchronization
    
      - Tags: 
thread, lifecycle, mutual-exclusion, synchronization, ownership.