I’m working with Visual Studio .Net for about 4 years now. To be honest, it’s one of the greatest IDE I’ve ever worked with but the amount of memory it consumes simply knocks the best of my computers. I’m currently using VS.NET 2005 with SP1 and the average memory allocation is ~200MB-~500MB. Now, I usually need to see a few solutions in front of me in order to work so from the total of 2G of memory I have, about ~1G is taken by Visual Studio instance(s). That is just too much, developer need some memory for other application you know (aka Outlook).
One of the obvious suggestions in this scenario is to create some sort of “master” solution and thus working with one instance of VS.NET that contains all the projects I need (from all the solutions). That is a good suggestion unless it was so boring to do and simply took too long(let’s face it, no one wants to waste about 5 minutes to create some sort of _temporary_ “master” solution each time he needs to see 2-3 solutions in front of him).
I came up with the idea to develop some sort of automatic solution builder with the following logic:
Let’s say I have an open solution X.sln.
Now I’m trying to open Y.sln.
The user will be asked if he wants to join X & Y into a temporary “master” solution (Z.sln) and if so:
1). The current open instance of VS.NET will save X.sln.
2). Generate a new solution: Z.sln
2.1) This solution will contain 2 “Solution Folder” (a new feature in VS.NET 2005):
X solution directory
Contain all the projects from the original X.sln.
Contain all the projects from the original Y.sln.
The user will have the option to select a “Solution Folder” and set it as the “active solution” (just like you select “active project”). Only the “Active Solution” will be built. I am not sure how useful this feature is, but I believe we do _not_ want to compile all of our projects in this master solution each and every time we build the solution. If you think about it, we usually need the other solutions open just to look at them while we’re trying to develop a feature or solving a bug.
This will decrease VS.NET memory usage and let me see all of the required data _without_ switching VS.NET instances and most important – no need to “build” the puzzle by hand.
Thinking about the constant time usage trade-off, I want to hear from you guys. Would you use this sort of utility? Do you really need it? Do you need any other functionality? Want to help me build it?
2 thoughts on “Smart Solution Builder: Would you find it useful?”
I routinely work on more than one VS, usually up to 3-4 at a time. most often is the various frameworks / scratch / current project / etc.
what I think that you are forgetting is that there is a high cost for the number of projects per solution, add in R# (which I refuse to code without) and you are really out of luck when you have > 20 projects in the solution, not to mention the compile time.
The dependencies may get interesting as well, at time, as well. (if they are refering to the binary assembly, but I am editing the code inline, it can get very confusing
I agree, the solution have some flaws (altough that’s way I suggest the "Active Solution Folder" which will compile only some of the projects). I’m not sure but maybe this post need to raise some red flag in MS camp. They must understand the _usage_ of their products. I would love to get this message out to the world some how as I’m sure there are a lot of people in our community feeling that way. I thought that by developing some sort of a solution (even if it’s not perfect) will benift the goal of reaching the VS.NET team.
Comments are closed.