Classes: motivations

  1. Problem analysis is based on data and algorithm break-down structuring $ \Rightarrow$ hierarchical design for data and algorithms
  2. Fewer bugs if data inter-dependency is low $ \Rightarrow$ design data structure first, then associate algorithms to data (not the reverse)
  3. Data structures are usually complex entities $ \Rightarrow$ need for sufficiently rich expressive powers for data design
  4. Different data objects may share some properties $ \Rightarrow$ exploit this fact in hierarchical design



Leo Liberti 2008-01-12