Difference between revisions of "Naming convention"

From DarkWiki
Jump to: navigation, search
(Finders & filters)
(Getters and setters)
Line 14: Line 14:
 
** Only affects the object that has the setter; it does not persist anywhere else
 
** Only affects the object that has the setter; it does not persist anywhere else
 
** Can be called multiple times, and in any order
 
** Can be called multiple times, and in any order
 +
 +
<syntaxhighlight lang="java" >
 +
public String getName() {
 +
  return this.name;
 +
}
 +
</syntaxhighlight>
  
 
===Finders & filters===
 
===Finders & filters===

Revision as of 13:56, 8 February 2020

Java naming convention

Getters and setters

  • Getters (get, is)
    • Takes no parameters
    • Does not alter the object in any way; it is constant
    • Can be called multiple times, and in any order
    • Returns a consistent single result
  • Setters (set)
    • Takes one parameter
    • May or may not alter the object
    • Only affects the object that has the setter; it does not persist anywhere else
    • Can be called multiple times, and in any order
public String getName() {
  return this.name;
}

Finders & filters

  • Finders (find)
    • Takes zero or more arguments (which act as filter or sorting controls)
    • Does not alter the object in any way; it is constant
    • Can be called multiple times, and in any order
    • Returns a consistent, single, non-null collection result (or an empty Optional) - never null

Factories

  • Factories
    • Responsible for creating objects - not persisting them!
    • Are stateless
  • Factory classes
    • Conform to [ObjectType]Factory naming convention
  • Factory methods
    • Conform to create[ObjectType] naming convention

Other

  • Populator methods (imbue)
    • Only modify the object(s) passed as arguments
    • Does not affect the object's state

Persistance

  • Repositories
    • Conform to [ObjectType]Repository naming convention
    • Methods such as save*, load*, find*, read*, write*, delete*