Top down design is a way of designing your program by starting with the biggest problem and breaking it down into smaller and smaller pieces that are easier to solve.
This approach helps in organizing and structuring the program logically, making it easier to manage complexity by focusing on higher-level abstractions before addressing the finer details.