Skip to content

A collection of Python OOP projects featuring inventory management systems, class inheritance, and property decorators, designed to demonstrate key concepts like static methods, instance variables, and CRUD functionality in real-world applications

Notifications You must be signed in to change notification settings

cesardushime/Advanced-OOP-in-Python

Repository files navigation

OOP in Python

Welcome to my collection of Python Object-Oriented Programming (OOP)! In this repository, you'll find practical implementations of various OOP concepts, such as inheritance, class methods, static methods, property decorators, and more. Each project is designed to help understand core OOP principles and how they can be applied to real-world scenarios.

Contents Included

1. Inventory Management System

This project demonstrates an inventory management system that allows users to add, remove, update, and display items in an inventory. Key OOP concepts like classes, methods, and CRUD operations are implemented to manage the inventory efficiently.

2. Class Methods & Static Methods

This file focuses on demonstrating the use of class methods and static methods, specifically showcasing a static method that checks whether a given day is a working day or not. This simple yet effective example highlights how static methods can be used in real-world applications.

3. Instance Variables & Inheritance

Here, I create a Developer class that inherits from an Employee class. The Developer class has its own functionality, such as a custom raise_amount method, while also leveraging the properties and methods of the parent class. This example demonstrates the power of inheritance and instance variables.

4. Inheritance & Subclasses

A final version of the inheritance system, where CRUD functionalities (Create, Retrieve, Update, Delete) are implemented. The project showcases how subclasses can interact with each other, ensuring efficient data manipulation within a system.

5. Property Decorators (Getters, Setters, Deleters)

In this file, I explore property decorators (@property, @setter, @deleter), demonstrating how to encapsulate and manage data within a class. This project enhances understanding of getter, setter, and deleter methods to handle attributes in an object-oriented fashion.

Key Concepts Covered:

  • Inheritance
  • Static and Class Methods
  • Instance Variables
  • Property Decorators (Getters, Setters, Deleters)
  • CRUD Functionality
  • Data Encapsulation

Tools & Technologies Used:

  • Python 3.x
  • Object-Oriented Programming (OOP) concepts
  • Jupyter Notebooks for interactive development

Feel free to explore the code and adapt it for your own use. Pull requests and feedback are always welcome!

Happy coding!

About

A collection of Python OOP projects featuring inventory management systems, class inheritance, and property decorators, designed to demonstrate key concepts like static methods, instance variables, and CRUD functionality in real-world applications

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages