4.

4.1

Reduce names with redundant information. Stop trying to dance
around the name, just say the name.
Don’t:

publicinterfaceConditionChecker{booleancheckCondition();}

Do:

publicinterfaceCondition{booleanisTrue();}

4.2

Meaningless words: Object, Thing, Component, Part, Manager,
Entity, Item. How much of a name is left when you remove all of
these words?
Example: Putting the word Exception behind every exception
is bad. Because it is obvious that something that comes after a
throws statement is obviously an exception. Exceptions that
indicate something bad happening doesn’t require the word
exception in the end.AccessViolationException \(\rightarrow\) AccessViolationIndexOutOfRangeException \(\rightarrow\) IndexOutOfRangeInvalidOperationException \(\rightarrow\)
InvalidOperation

4.3

Name exceptions using the problem so that it becomes obvious
even without the word Exception.ArgumentException \(\rightarrow\) InvalidArgument