Original link: Designing a Parking Lot System in Java — My Low Level Design Journey / Souvanik Saha blog.
The example code is Java, but it could be any OOP language.