Data abstraction and program design

Rod Ellis · Pitman eBooks · 1991

Part 1 The design of large systems: large systems and complexity abstraction and design partitioning in software systems programming in the large evaluating design in operational life good high-level design. Part 2 Concepts of modularity: the nature of modules module coupling module cohesion the principle and the benefits summary. Part 3 Language structures and modularity: Pascal implementations of the stack the data abstraction. Part 4 Languages and data abstraction - 1: MODULA-2 modules library modules abstract data types. Part 5 Languages and data abstraction - 2: Ada Ada program units review of Ada. Part 6 Information hiding - a case study: the problem the algorithm design - the conventional approach analysis of the conventional design improving the design by narrowing interface Parnas' solution the circular shifter interface the sorter interface the circular shifter revisited information hiding. Part 7 Object-oriented design: conventional methodologies software design real world objects object-oriented design the methodology object discovery by prototyping. Part 8 Reusability: criteria for reusability data abstraction - the basis for reusability genericity design and reuse extensibility. Part 9 Formal specification of abstract data types: a familiar example an alternative semantics a line editor implementation bias algebras and specifications algebraic specification and implementation. Part 10 The object-oriented paradigm: objects and classes inheritance. Part 11 Object-oriented languages C++ statically and strongly-typed OOPLs multiple inheritance.

Read the paper · More papers on PaperTik