Grammatically correct: ProjectileManager or ProjectilesManager?

Started by
44 comments, last by deathtrap 18 years, 3 months ago
Quote:The projectile object may have an interface, but it does not have a manager. Managers are for a pool of resources.
If you want to say that 'manager' implicitly indicates plurality of the subject, what about 'City Manager' or 'Company Manager'? In such cases the subject is deemed to be singular. So the singular form is ambiguous - one could not say for sure whether 'X Manager' handles multiple instances of X or just one. But 'Xs Manager' is always a manager which can handle multiple X objects.
Advertisement
Quote:Original post by Argus2
If you want to say that 'manager' implicitly indicates plurality of the subject, what about 'City Manager' or 'Company Manager'?

One could argue that a good name for such classes would be 'Mayor' or 'CEO', respectively.
:stylin: "Make games, not war.""...if you're doing this to learn then just study a modern C++ compiler's implementation." -snk_kid
Quote:Original post by Argus2
Quote:The projectile object may have an interface, but it does not have a manager. Managers are for a pool of resources.
If you want to say that 'manager' implicitly indicates plurality of the subject, what about 'City Manager' or 'Company Manager'? In such cases the subject is deemed to be singular. So the singular form is ambiguous - one could not say for sure whether 'X Manager' handles multiple instances of X or just one. But 'Xs Manager' is always a manager which can handle multiple X objects.

A City Manager manages one city, true, but a city contains several resources. It is a way of saying 'Money, Education, Taxes, Staff etc Manager'. Same goes for Company Manager. So we indirectly deal with plural.

(EDIT: Btw, this is my 1000th post!)

[Edited by - Enselic on January 13, 2006 4:42:12 PM]
[s]--------------------------------------------------------[/s]chromecode.com - software with source code
Quote:
Quote:Original post by Daggett
manager of a projectile

The projectile object may have an interface, but it does not have a manager. Managers are for a pool of resources.

My point is that this is not necessarily the case, there is no reason why a single projectile can't have a manager. Thus, to avoid ambiguities, ProjectilesManager would be a better choice. But it's really not a big deal, either one would work.
Quote:Original post by Argus2
Quote:The projectile object may have an interface, but it does not have a manager. Managers are for a pool of resources.
If you want to say that 'manager' implicitly indicates plurality of the subject, what about 'City Manager' or 'Company Manager'? In such cases the subject is deemed to be singular. So the singular form is ambiguous - one could not say for sure whether 'X Manager' handles multiple instances of X or just one. But 'Xs Manager' is always a manager which can handle multiple X objects.

Those are people not software engine components. You could define them as such, but that really isn't a "manager" in the context of programming. Once you change contexts words can have very different meanings.
Quote:Original post by Daggett
Quote:
Quote:Original post by Daggett
manager of a projectile

The projectile object may have an interface, but it does not have a manager. Managers are for a pool of resources.

My point is that this is not necessarily the case, there is no reason why a single projectile can't have a manager. Thus, to avoid ambiguities, ProjectilesManager would be a better choice. But it's really not a big deal, either one would work.

Sounds like a great recipe for bad software design. The projectile should have an interface. If something within it needs management then you may have a manager for each internal piece that requires management. The projectile itself is one item, management entails operations on multiple items.
Programming since 1995.
Quote:Original post by Argus2
Quote:The projectile object may have an interface, but it does not have a manager. Managers are for a pool of resources.
If you want to say that 'manager' implicitly indicates plurality of the subject, what about 'City Manager' or 'Company Manager'? In such cases the subject is deemed to be singular. So the singular form is ambiguous - one could not say for sure whether 'X Manager' handles multiple instances of X or just one. But 'Xs Manager' is always a manager which can handle multiple X objects.

Those are people not software engine components. You could define them as such, but that really isn't a "manager" in the context of programming.
Programming since 1995.
Original post by TheOther
I think it should be called "PeanutButterLover".

If you're worried about a detail like that, then take a 3 day mandatory breather from your project!!

Back yet?
quote]

Disagree :)
It's best to decide on naming issues beforehand, or at least once you notice doubts to define some rules. Or else you'll be wasting lots of time changing variable names from plural to singular, and then back. The same goes for naming classes or instances, if you notice you are using things like TextureObject and are wondering whether you should change it to TextureInstance or TextureItem then you know something is going wrong.
I would go for "ProjectileManager" or "ProjectileMgr" if you like shorter names.
So you would just have the "type" to manage in front and then, well... manager... that's what the class does.. it manages something.
Having it as a plural "ProjectilesManager", would not read fluently in my eyes :).

So that's usually my rule of thumb, being able to read a variable or class name fluently and to keep things as simple as possible (which usually goes hand in hand).
Quote:Original post by The Specialist
So that's usually my rule of thumb, being able to read a variable or class name fluently and to keep things as simple as possible (which usually goes hand in hand).

So how does tacking "Manager" onto the end of a class name tell you what the class does? How does it manage? What is the exact relationship between this class and the "managed" class? Using a name that better describes a class' purpose (see my previous post) not only better illustrate this relationship, but eliminates silly ambiguity discussions like this one. That's why we use names like ShapeFactory, or GlyphComposite. In short, avoid using "Manager" and you'll be fine.
:stylin: "Make games, not war.""...if you're doing this to learn then just study a modern C++ compiler's implementation." -snk_kid
Quote:Original post by stylin
So how does tacking "Manager" onto the end of a class name tell you what the class does?


How does projectile tell you what a class does? It doesn't, it tells you what it is. I think you can work out the rest of my arguement.

EDIT: The fact this is a discusion must make english a pretty poor language.
___________________________________________________David OlsenIf I've helped you, please vote for PigeonGrape!

This topic is closed to new replies.

Advertisement