На этом шаге мы рассмотрим идентификацию классов
В традиционной процедурной программе выполнение начинается сверху, то есть с функции main(). При проектировании объектно-ориентированной системы понятие "верха" как такогового не существует, и поэтому начинающие осваивать ООП часто интересуются, с чего же следует начинать. Ответ таков: сначала нужно идентифицировать классы, а затем добавить методы в каждый класс.
Простое эмпирическое правило для идентифицирования классов состоит в том, чтобы выделить для них имена существительные при анализе проблемной области. С другой стороны, методы соответствуют глаголам, обозначающим действие. Например, при описании системы обработки заказов используются следующие имена существительные:
Этим именам соответствуют классы Item, Order, и так далее.
Далее выбираются глаголы. Изделия вводятся в заказы. Заказы выполняются или отменяются. Оплата заказа осуществляется. Используя эти глаголы, можно определить объект, выполняющий такие действия.
Разумеется, упомянутое выше правило выбора имен существительных и глаголов является не более чем рекомендацией. И только опыт может помочь программисту решить, какие именно существительные и глаголы следует выбрать при создании класса.
На следующем шаге мы рассмотрим отношения между классами