Dear friends,
In many of the sample ASP.Net projects, I am seeing a folder structure with
1) all model classes in Components folder
2) all user controls in UserControls folder
3) All javascripts in
JS folder
etc. etc. I think this is the standard folder structure suggested by Microsoft.
But, I prefer a folder structure that is dependant on project modules. Since I am using UML to model projects, I have a list of entities and methods connected to entities. I prefer to have one folder for each entity and put all
JS files, User controls, Model class, custom controls (specific to that entity) in the single folder. I find this to be more scalable and developer friendly as there are only few files in a folder. Also, I can assign folder level access to developers.
For e.g. let Students, courses and subjects be 3 entities in a University mgmt. software. In my project, there will be 3 folders namely Student, Course and subject. All class files, aspx files,
JS files and controller files associated with Student entity is put in Student folder alone.
In the first folder structure I mentioned, class files, aspx files, user controls etc. associated with one entity is scattered in many folders. That method is also not scalable. When the project expands to include 500 entities, There will be atleast 500 class files in Components folder (which is cumbersome to work with).
I have not seen any project following my folder structure. So, I become dubious about its advantages / disadvantages. May I know whether there are any disadvantages for my folder structure ? Why most of the people are following the first folder structure I mentioned ?