I am a novice programmer who has inherited a software project that contains the following files and folders. The project is using C# and WPF. What should I expect to find and continue putting inside of the following folders and files:


I am hoping that this structure builds on some kind of easy to understand theory.

My most confusing points are that:

  • The API.cs file has a lot of functions that I think are part of some of the models. Also, the functions in this application are not used by any other application, so why is there even need for an API?
  • I don't quite understand what the difference is between Common and Models.

If you can shed some light on why this kind of structure is used and what should go where, then that would be of great help to me.


All those folders are simply means to keep track of your project resources. If you wanted to put a model into common or a shared resource into model (generally I would put common resources into the common directory) you could. They really have little to do with the app itself. As for methods which do not seem to be used, you say it is an inherited project? It is not unusual to find redundant code in inherited projects so maybe they aren't.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.