
In message <hnubc2hoe0ok5pjem2hfia6ejdhile71cc@4ax.com>, Gennaro Prota <gennaro_prota@yahoo.com> writes
On Mon, 24 Jul 2006 20:55:39 -0400, "Beman Dawes" <bdawes@acm.org> wrote:
...
In the example, I call "part number" an identifier. It is a number assigned to parts to uniquely identify them. It is common for an identifier to serve no other purpose and its value be immaterial. So it is pretty close to what the database folks call a key. But the value of keys is often material, as in the manufacturer table in the Wikipedia article.
Yeah, pretty clear. I wouldn't like this to shift into the classical Parkinson's bicycle shed, so I'll just have a short try: "identifier" is IMHO a good name except for the fact that it is immediately associated by C++ programmers with its grammar meaning, as Jeff noticed. The term I've most frequently heard for the database-related concept is "id", which is of course short for "identifier" but doesn't have the drawback above. OTOH it's probably a bit too short for library usage. Alternatively, I can see "newtype", "strong_type", "strong_typed" or "identified"(!?). Given that the context of usage is a derived class definition I have a slight preference for the first and the third one, though I don't object to the current name either.
The term Object ID, or OID, seems to be common in some circles. Drawbacks in this context tho' are that it does not necessarily correspond to a data member('s value); and there might be more than one data member whose value would uniquely identify the object. -- Alec Ross