Bob shares an excellent vision:
I would like to develop a seating chart. Here are some ideas... ...snip.....
Any help is greatly appreciated. I appreciate any help!
Excellent!
Break your big problem into several smaller problems. Solve the smaller problems one at a time. As you fix design issues in your smaller problems start to think about how you can refactor your code to make reusable components for your next set of goals.
Since you asked...
A seating arrangement, and attendence feature suggests you'll have students and seminars.
Rows and columns, special grids, and possibly group discussion (circles!) arrangements suggests desks and chairs.
I would suggest you start by addressing these as separate problems. Maybe you first figure out what data you'll collect for each person in your classroom, or seminar. What data is necessary to completely describe a single student?
Then maybe consider describing a seminar group. How many students
per seminar? Any extra seats for guest lecturers, or drop-in administrators? A seminar
object might describe the time, session, title, instructors, assistants, description of the course being taught. Perhaps even contain a set of student
objects assigned to that particular session.
Next consider developing a shape arrangement solution independent of your student
, or seminar
objects. Have a struct that takes a given number of box objects. From an enum of possibilities, allow the interface to provide standard setups such as traditional grids, semi-circles, full circles, etc.
At some point you can match students in a seminar to the desks in an arrangement.
Sounds like a fun project! Keep us updated!