Getter and setter policy
From CSSEMediaWiki
Needing to have getters and setters is bad as they increase coupling. However if need to implement them apply the following guides.
Objects should store all their data in private or protected variables. Getter and setter methods should be produced for any variable you may consider you have a legitimate reason to declare public. Classes should ideally call their own getter and setters when accessing their internal data. This prevents the object getting into a invalid state.