Solved

.Net C# code cleanup

Posted on 2009-05-04
5
522 Views
Last Modified: 2013-12-17
Ok so I've been adding to this C# class that I've written and over time its become totally unorganized.  I'm new to .net so I'm not sure if I can do this but is there a tool that does basic code cleanup.

Mainly what I want is to alphabetize all the functions and the classes local variables as my codes been getting less readable as things have been getting added and that would really help.  Anybody with any .Net experience have any ideas as to if .Net has a code cleanup function.  

I've seen the edit>format thing which works ok but I'm mainly after alphabetizing my functions and variables.
0
Comment
Question by:ICPooreman
5 Comments
 
LVL 39

Accepted Solution

by:
abel earned 500 total points
ID: 24298038
This might do what you want, but I haven't tried it myself (though I know quite some people that were happy with it, it is a commercial product and I'm not sure you're after something like that): http://www.jetbrains.com/resharper/features/code_formatting.html
0
 
LVL 9

Expert Comment

by:tculler
ID: 24298230
My best advice would be to ditch alphabetizing your functions; that makes little sense, because you want to logically group your functions, not alphabetize them. If you're using Visual Studio (I surely hope you are, because it is truly the king of IDE's, especially for C#), I suggest using the #region and #endregion directives. Any code between these two directives can be collapsed, and the region can be labelled for easy use. For example, I have a custom code snippet that does the "skeleton" for this automatically, and it looks similar to the following:
namespace SomeNamespace

{

     public class SomeClass

     {

          #region Fields

          // ALL fields, public and private

          #endregion
 

          #region Construction

          // ALL overloaded constructors

          #endregion
 

          #region Properties

          // ALL properties

          #endregion
 

          #region Public Methods

          // Group each method and all overloads

          // in their own region.

          #region SomeMethod

          public void SomeMethod() {}

          public void SomeMethod(int someInt) {}

          public void SomeMethod(int someInt, string someString) {}

          #endregion

          // ALL public/internal methods, grouped as above

          #endregion
 

          #region Private Methods

          // ALL private/protected methods, grouped as above

          #endregion
 

          // Any other logical groupings, conforming to above.

     }

}

Open in new window

0
 
LVL 27

Expert Comment

by:nmarun
ID: 24298233
I was going to suggest Resharper as well. I've used this add-on for quite some time now and I'll be honest.. I cannot do without it now. It is really helpful and saves quite a bit of time.
0
 

Author Closing Comment

by:ICPooreman
ID: 31577685
Wow I just downloaded resharper... I've only been playing with it for several minutes but I'm already quite impressed.  Thanks this did the trick.
0
 
LVL 39

Expert Comment

by:abel
ID: 24298311
maybe I should download it too, if all of you are so enthusiastic about it ;-)

> Wow I just downloaded resharper... I've only been playing with it for
> several minutes but I'm already quite impressed. Thanks this did the trick.

glad it helped you so well. Like I said: I should try it myself perhaps to cleanup some customer's code ;-)

Don't forget on the comment of tculler: using regions is quite a good thing and can be more helpful then alphabetizing... But that depends on your need, of course.
0

Featured Post

Free Trending Threat Insights Every Day

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

Join & Write a Comment

Suggested Solutions

Update (December 2011): Since this article was published, the things have changed for good for Android native developers. The Sequoyah Project (http://www.eclipse.org/sequoyah/) automates most of the tasks discussed in this article. You can even fin…
Many of us here at EE write code. Many of us write exceptional code; just as many of us write exception-prone code. As we all should know, exceptions are a mechanism for handling errors which are typically out of our control. From database errors, t…
This tutorial covers a step-by-step guide to install VisualVM launcher in eclipse.
The viewer will learn how to use NetBeans IDE 8.0 for Windows to connect to a MySQL database. Open Services Panel: Create a new connection using New Connection Wizard: Create a test database called eetutorial: Create a new test tabel called ee…

757 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

19 Experts available now in Live!

Get 1:1 Help Now