https://learn-software.com/programming/oop/introduction/