So my first step in understanding .Net coding standards is to understand what’s out there. So time to use the handiest tool available, Web Search (Google and Bing). WOW! Maybe it’s just the way I chose my words, ok so it always has to do with that, but searching on “.Net Coding Standards” returned over 30 million hits on Bingand 417,000 on Google.
Ugh, where’s my coffee? Ok time to narrow it down because I’m not crazy. Let’s just focus on the to some of the top ones. I like ones that are formatted for HTML or in a downloaded document. I’m also looking for more complete ones, not ones that just focus on one topic of the standards. Remember, I’m not here to invent the wheel, just to find the best ideas for designing and constructing a wheel. Then to understand each aspect of the wheel to determine why it’s important to have that standard. Here we go…
We probably need to start with the big one. The one from Microsoft. Design Guidelines for Class Libraries.
Clint Edmonson has a post on NotsoTrivial.net containing free VB & C# coding standards. I like his quote…
"It doesn't matter what the standards are, as long as you have them and everyone agrees to adhere to them!"
Lance's Hunts Whiteboard has a C# specific download.
For those of you that have spare cash and don’t want to pollute the air with the ash from burning it, you can buy one from CafePress.com I think I’ll stick to the free ones, especially after reading this.
Michael Flanakin has one that is pretty decent set of standards on his blog, but I just wish there was an index so I could jump between the sections.
A quick scan shows this one by Paul Yao and David Durant, shows great detail in the use of Hungarian format. That will come in handy I’m sure when we get to that section.
And finally some insight on internal coding standards from Brad Abrams at Microsoft
Ok that gives us a pretty good list. I’ll use/refer to the above as well as some of my internal corporate documents as we work my way through this arduous task. Let’s dig in, and ask a lot of questions.
Happy Moon Landing!