Technical Term for a class

Discussion in 'Spigot Plugin Development' started by Stuperfied, May 3, 2017.

  1. Looking for an appropriate name for a class, would like people to see it and instantly identify what it is by its name.

    Ok, so hyperthetically if I have a class which defines a generic animal for instance, then create a map of the animals.

    private Animal dog = new Animal();

    what is the technical term and hence appropriate name for the animal class?

    Some possibilities which came to mind are probably not suitable but as follows.

    Any ideas on this would be appreciated...
  2. "Animal". Don't overcomplicate it ;)
  3. Yes, that would be ideal, however I used Animal as the example, mostly because its well known and would be easily understood. The actual class name would be Command or CommandTree since its for my command interpreter and i'm trying to avoid conflicts.

    Each instance will define one branch of the command tree with all of its children.
  4. I would personally just do:


    Simple and straight forward :p
    • Creative Creative x 1
  5. That sounds exactly like a node. So CommandNode?
    • Like Like x 1
  6. <pluginname><classname> is a good idea but would be a little too long in this case
    CommandNode does seem to fit but is there any sort of convention here?
  7. Doesn't sound too long to me.

    I have a class called CmdDyescapeQuestEditToAdvanceRemove which is a class for a command that lets people remove an advance rule from a quest. :p
  8. Convention with respect to what? The choice of name? The way the name is structured?
  9. I suddenly decided to avoid all of your API's. :eek::p

    Ok, so the package is intended to avoid conflicts in names but is there any convention for structuring the name if you already suspect there will be a possibility of a conflict?

    I would like to site my converters in my Util project as an example where I convert from a bukkit location to a worldedit location. Since both worldedit and bukkit call their class "Location", I was required to reference one of them using its full package name.