What is the ideal project structure for a large .net application?
I’m working on a project currently with 5 developers. The application consists of a thick client, a thin admin client, and multiple supporting maintenance applications. Currently the thick client is written in VB6 and is slated for conversion to .NET in the next 6-12 months. The thin client is an admin web application that allows the settings over the thick clients to be managed by administration staff. The supporting maintenance applications are used to run nightly batch jobs and jobs that need to happen at regular intervals to keep data moving throughout the application. Currently we have the following structures:
File system:
Current File System Layout http://img130.imageshack.us/img130/5387/currentprojectlayout.png
SVN:
Current SVN Layout http://img707.imageshack.us/img707/2320/currentsvnlayout.png
As you can see, our Subversion repository basically mirrors our file system layout, with the obvious changes for the standard Subversion Trunk, Tags, and Branches folders. Our project has a lib folder which holds all of our referenced non-GAC dlls. Inside of our src directory, we have two folders and our continuous integration build file. The two folders house the two types of applications, our thick client (VB6), and our other projects (Other). The VB6 application is split up into different modules which contain different pieces of business logic for the application. In the Other folder, we have many different projects (depicted above with the Project1 – Project6, there are many more). Have a web application, which houses our thin client 开发者_如何学编程code. Some of the other projects here are supporting applications, common classes that are accessed across different parts of the application, and our maintenance applications. When we go to .NET with the VB6 application, I’d like to restructure the project a little and want to know what would be the best way to go about reorganization this application. My first thought was to have the following structure:
Proposed File System Layout http://img248.imageshack.us/img248/7712/proposedprojectlayout.png
I’m aware that there are many stack overflow questions out there that deal with this sort of problem, but this is more of a specific question about my project, not a general question like many others. Is this the best way of sorting out the project, or is there a better way?
Thank you,
Scott Blue
This article is the best reference I know about the topic: http://msdn.microsoft.com/en-us/library/ee817674.aspx
Hope it helps.
精彩评论