I program with different languages and for a while now I have wanted to make the K&R variant coding style my default in Visual Studio.
So what do I mean by the K&R variant coding style, this coding style was named after co-authors of the book The C Programming Language (thank you Wikipedia!) Kernighan and Ritchie. The variant I like is based on Java - rather than taking up a new line I like the opening brace on the first line of the statement block.
K&R variant coding style example:public class Class1 {
public Class1() {
}
public string Method1() {
return "Method1";
}
}
Visual Studio default (Allman coding style):
public class Class1
{
public Class1()
{
}
public string Method1()
{
return "Method1";
}
}
I was put off using the K&R variant coding style when using C# because the default in Visual Studio is the Allman coding style. However, after recently downloading the MVC 2.0 RTM source I noticed that the project uses the K&R variant coding style.
ChildActionOnlyAttribute snippet from the MVC 2.0 source code:
[AttributeUsage(AttributeTargets.Class | AttributeTargets.Method, Inherited = true, AllowMultiple = false)]
public class ChildActionCacheAttribute : ActionFilterAttribute {
private const string _cacheKeyPrefix = "__MVC_ChildActionCache_Entry_";
private static readonly object _typeId = new object();
private readonly object _itemsCacheKey = new object();
private string _key;
public int Duration {
get;
set;
}
public string Key {
get {
return _key ?? String.Empty;
}
set {
_key = value;
}
}
}
Knowing that a very popular C# project uses the K&R variant coding style I decided to change my default coding style in Visual Studio. Below is a basic screencast I created that shows you how to change the default coding style to the K&R variant in Visual Studio 2010. BTW the settings are in exactly the same place in Visual Studio 2008.
A quick Google search found that I'm not alone in my thinking http://scyanide.com/2010/02/xcode-the-starting-curly-brace/.