Programming structure...a hot topic at my workplace. We've fought over this topic for the last 2 years. Here's the deal. Two different approaches are mentioned.
The first, the “Control Structure”, is a central area where everything passes through it. Think Fuse Box methodology if you are a Cold Fusion developer. In the old days (yeah...ASP 3.0), we would use a central page (main.asp) and pass an action query string value through it (main.asp?action=ShowUsers), which would call a sub or function from another page (users.asp). The other page would be a gathering of functions, subs, classes that were specific to a function in the program. This works great (especially for troubleshooting), but is hard to follow through if you are not used to it. In the .NET realm, we have come up with a similar method of using a default.aspx page but plugging user controls into it programmatically. I like this method, but to me, it seems slower and more clumsy in testing. Sure, it's clear and concise, but is it the best use of .NET?
The second method involves a page-for-page approach. Microsoft demonstrates this through several of their .NET code examples. Each section is its own page (users.aspx, admin.aspx, etc.). I recently finished a project where the deadline quickly approached and I used this method. The project went smooth and we've since added on some functionality and it was simple to do so. I don't have issues with this approach, but other developers in my group do.
What structure do you use for a web project? Have you come up with your own methodology (per se) for the layout (structure) of your applications? Is any of our approaches bad or good in some way? I'd like the community to speak out on this one. Not very many folks speak of structure (but do speak of code and samples).