I'd just like to follow up a bit on this.
I have a single .cs file that is 860 lines at present (after condensing it) and it is by far one of the largest files in my entire Solution. I have turned off Typing Assistance (due to my previously cited bug, which you have assured me is being worked on, much to my appreciation) and I have turned down the number of visual glyphs that appear on screen (such as section lines, etc), and the performance of my IDE in this file is terrible
with JustCode turned on.
My machine is no superman, but it is far, far from 'meeting system requirements'. It is a Quad-Core Intel CPU, with an 8 GB RAM setup on Windows 7 64-bit. I can understand initial loading of a file to be slow as analysis completes, but the ongoing performance lag is getting unbearable to the point where I cannot even work in that file with JustCode running.
The speed is such that I can start typing, and by the time the IDE can even handle my input, it's tried to bring up intellisense and my keystrokes have automatically selected things, expanded them, added in names I did not intend, etc. Trying to backspace and correct things is just as slow - and I am very certain this is due to the fact that JustCode is doing something heavy in the background.
I do see
that JustCode has a "Refresh Analysis" option - this leads me to believe that it is not always
calculating errors - but I do know this much.
- With JustCode Running, large files are unusable (I had not considered 800+ lines to be 'large' until now)
- I do not experience this problem in ReSharper 5.0 Trial (or even 6.0 EAP Trial)
- I do not experience this problem in DevExpress CodeRush or Refactor Pro.
- I do not experience this problem with JustCode disabled or uninstalled.
Other than the typing assistance problems, and this performance issue, JustCode runs flawlessly in every other aspect.
Other information you may find helpful.
- The files I have the most trouble with involve heavy use of generics. I have to assume this is important because I've taken similar code of similar size using hard typed collections and experience less lag.
- In relation to the first point, the files I have the most trouble with have heavy use of collections.
- The files I have the most trouble with have heavy reference to both internal classes and external libraries (in my specific case, nHibernate/Fluent nHibernate/Castle)
- I do notice a difference per method, not simply per file. A small method yields faster processing than a large method. I'm not sure if this is significant or not to you guys, but it does seem to me that in simple, quick methods, that there is much less of a problem.