https://medium.com/@nidah.chaudary/demystifying-object-oriented-programming-unveiling-concepts-with-real-life-examples-abc7156d6256