hpique
hpique

Reputation: 120324

How to name a constant in Objective-C?

What's the naming convention for constants in Objective-C (or most widely used way to name them)?

Is there a different criteria for extern constants?

Some styles I have seen:

NSString* const kPreferenceFirstRun = @"FirstRun";

// Replace "XY" by a prefix representing your company, project or module
NSString* const XYPreferenceFirstRun = @"FirstRun"; 

Upvotes: 42

Views: 13450

Answers (2)

hpique
hpique

Reputation: 120324

After a bit of googling I've found the official coding guidelines for Cocoa.

To sum up:

  • Start with a two- or three-letter prefix in ALL-CAPS
  • Rest in UpperCamelCase
  • Same criteria for extern constants

I agree with itaiferber that the k prefix style is clearer and also much more useful for autocompletion. It would be interesting to know if this style is more popular than the official guidelines.

Upvotes: 42

heximal
heximal

Reputation: 10517

it's seems to me, the best practice is to name constants in upper-case. but cocoa-core developers don't seem to share my opinion)) they use CamelCase for constants

Upvotes: 5

Related Questions