Skip to content

Instantly share code, notes, and snippets.

@odds-get-evened
Last active April 21, 2022 22:31
Show Gist options
  • Save odds-get-evened/eef1500438531b0b4dc6f0991c83e877 to your computer and use it in GitHub Desktop.
Save odds-get-evened/eef1500438531b0b4dc6f0991c83e877 to your computer and use it in GitHub Desktop.
steps in object-oriented design

steps in object-oriented design

  • evaluate objects created in the analysis phase
    • helps identify more objects needed for overall solution
    • refines existing object properties and methods
  • specify class dependencies
    • establishes relations between objects
    • determines appropriate classes to represent respective objects
      • relationships:
        • inheritance - allows a class to inherit the properties and methods of another class
        • containment - an object of one class becomes a member object of another class
        • use - provides information on the many classes a class could use as well as inform us of how it will do so.
  • create a class hierarchy
    • allows for the reuse of data and functions already established
    • new classes can be formed from existing ones
  • class design
    • management functions: how to create or destroy objects
    • implementation functions: operations performed upon class data types
    • access functions: this is a function for accessing internal properties of a class
    • utility functions: how to handle errors, testing, or access control
  • determine the "driver" program
    • i.e. the main() function in C++
    • receives user input
    • creates objects from class definitions
    • displays output based on user's input requirements
    • makes calls to member? functions
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment