The habits, summarized below, are:
Habit 1: Constructor Performs Minimal Work. Ideally, its constructor will only load data into its instance variables using the constructor's parameters
Habit 2: Methods Clearly Convey Their Intent. Long and descriptive method names help developer teams quickly understand the purpose and function of their software.
Habit 3: An Object Performs a Focused Set of Services. Each object in the software to be focused on performing a small and unique set of services. Objects that perform a small amount of work are easier to read and more likely to be used correctly because there is less code to digest.
Habit 4: State-Changing Methods Contain Minimal Behavior Logic. Intermixing state-changing logic with behavior logic makes the software more difficult to understand because it increases the amount of work happening in one place.
Habit 5: Behavior Methods Can Be Called in Any Order. Ensure that each behavior method provides value independent of any other behavior method.