-
Notifications
You must be signed in to change notification settings - Fork 82
Coding Guidelines
atheken edited this page Aug 13, 2010
·
4 revisions
In order to provide maintainable code that we can all work from, we need to follow these c# guidelines:
- Fields are to be private, protected (or in rare cases “internal”), make public properties if you need to expose values to other classes.
- Fields should be prefixed like so: _backingStore
- Use PascalCase for Properties and Functions
- Include a <summary> for all public members (and ideally also for internal and protected members, too)
- A corollary to this rule is to include a <summary> on class definitions – remember, if you can’t think of a brief overview of what the class or member is doing, it’s doing too much.
- Include <remarks> when something has gotchas, or there are things that might potentially break easily/aren’t implemented.
- Parameter and locally scoped variables should be camelCased
- avoid i,j,k, etc… – intellisense is your friend.
- Keep names concise but adequately descriptive.
- Don’t make things public/internal that can be protected or even private – reduce surface area of class definitions to the minimum required.
- using statements are the first thing in all files. namespaces are second.
- Don’t use magic numbers/strings, declare and use consts instead.
- New code, new tests.
- For new feature sets, please create topic branches in your repo.
- “git checkout -b <name of feature>” is the form to create a new topic branch.
- “git pull <remote name> <remote branch>” will get you caught up with an external repo, please merge off of atheken’s master before sending a pull request.
These are guidelines that we should try to stick with, understanding that we’re all a little bit different about our habits, please send feedback to the google group