← Back

Two important concepts in programming

  1. Decomposition
    Divide the large problem into manageable chunks. Solve individual chunks and then combine all the solutions by means of composition. This will solve the larger problem.

  2. Hierarchy
    Group some details together to form an abstraction. The group is the higher level abstraction and the details are the lower level abstractions. We can continue the grouping and dividing of abstractions to move up or down the hierarchical level till the problem becomes manageable.