Using a composite data type to group types together and its associated functions together.

Modeling a problem in an object-oriented manner

NounsPropertiesAssociated Verbs
ClassesFieldsMethods

Things to consider if a class is truly "necessary"

  • the storage of multiple properties?
  • actions associated with entity?
  • real world counterpart
  • potential changes to entity in future?