Naming Consistancy

Published May 29, 2014
Advertisement
Something that has been bugging me is naming conventions. I see a bit of inconsistency in the book I read. Below is what I feel is right but I am aware that there may not be a global standard as such.int score, playerScore.void DoSomething().class Player, PlayerStats.
Objects is the one I'm on the fence about, it's a variable of sorts so this could be done as: Player john = new Player. The problem here is that when it comes to names like that, grammar dictates that I should capitalise a name, and I often do out of habit.
So Player John = new Player reads 'better' to me but breaks the variable convention.
I feel it may be an exception because when I look at say a message box code: MessageBox.Show(""), this has each word upper case which would be broken if I was calling a method for john such as: john.ShowStats();

What I also find odd in my book is that class fields are capitalised but they are just a variableclass Elephant {public int EarSize;public string Name;public void WhoAmI() {MessageBox.Show("My ears are " + EarSize + " inches tall.",Name + " says...");}}
I need to choose something and stick to it, I'm just wondering what others use. I suppose for what I'm doing it doesn't matter too much as only I'll ever be working on my projects but it's good practice to use something that most others do.
.
0 likes 7 comments

Comments

XXChester

I wouldn't say there is a "global standard" but most languages and shops use camal casing with the exception being .Net which uses what you are describing (upper casing the first letter of each word...not even sure what this is called).

In the end, it really doesn't matter as long as you are consistent with your naming. Basically though, things starting with upper case letters are classes (models, services etc), so it is easy to identify if you are dealing with a class or a static class.

May 29, 2014 12:53 PM
dmatter

For me it heavily depends on the language.

For C++ and C# I do as you describe:


int score
void DoSomething()
class Player

That would be the standard convention for C# anyway.

In C# all public members start with a capital letter (Pascal case), which explains your Elephant class. Had those variables been private then they would start with a lower-case letter (Camel case).

May 29, 2014 02:09 PM
Saint Retro

Thank you both for your replies. I suppose the book is correct then, it just didn't explain why it was using this convention.

May 29, 2014 02:46 PM
Aardvajk

I've come to prefer camel case for functions, methods and variables.

looksLikeThis()

And initial capitals for type names. You are quite correct that there is no "right" way. It's good to be consistent in a single code base.

I jump between different conventions between work and home without too much trouble.

May 29, 2014 04:24 PM
ferrous

For MessageBox.Show, isn't that a static function? So it's using the <classname>.<functionname> syntax, which goes with the capital for classes, lowercase for instances.

And yeah, consistency is good, spellcheck is also good.

May 29, 2014 09:15 PM
jbadams

(upper casing the first letter of each word...not even sure what this is called).

PascalCase?

May 30, 2014 11:32 AM
Saint Retro

For MessageBox.Show, isn't that a static function? So it's using the <classname>.<functionname> syntax, which goes with the capital for classes, lowercase for instances.

And yeah, consistency is good, spellcheck is also good.

Yes you are spot on there, I didn't realize that when I wrote the post smile.png

May 31, 2014 03:32 PM
You must log in to join the conversation.
Don't have a GameDev.net account? Sign up!
Advertisement
Advertisement