Design Principles [ S.O.L.I.D.]

----------------------------------------------------------------- Single Responsibility Principle ----------------------------------------------------------------- About : The Single Responsibility Principle is a simple and intuitive principle. This is one of the 5 principles of S.O.L.I.D.. A responsibility in the current context is said to be a reason for change. The single responsibility principle states that if there more than one reasons for a class to change then we say that this class is not proper and it should be divided into further classes. There cannot be more than a reason for a class to be changed. Example : Suppose there is a class called " Customer " and contains a method called as " CalculateBills() " we should call this class has not been written properly. The customer class should only perform the customer related responsibilities. Please see the below snap shot: There are some observations out of the above snap shot: Customer class should be re...