Объектно-ориентированное программирование на С#. Андрианова А.А - 21 стр.

UptoLike

21
на операциях, которые описывают его поведение. В этом и заключается
абстрагирование.
При абстрагировании выделяются те характеристики объекта, которые
отличают его от всех других видов объектов и, таким образом, четко
определяют его концептуальные границы с точки зрения наблюдателя.
Классы объектной модели представляют собой абстракции сущностей
предметной области задачи. Выбор правильного набора абстракций для
заданной предметной области представляет собой главную задачу объектно-
ориентированного проектирования.
Абстракция структурной характеристики объекта определяется своим
именем и множеством значений, которые она может принимать. Например,
свойство велосипеда «цвет» может принимать значения «красный»,
«зеленый», «серебристый» и др., свойство «количество передач» 1, 4, 8 и
др., «стоимость» - 15 000 рублей, 40 000 рублей и т.д. С точки зрения
программирования множество значений определяется типом данных
переменной, которая будет хранить значение этой характеристики.
В процессе использования объекта значения структурных
характеристик могут изменяться. Например, увеличилась стоимость
велосипеда или поменялся его цвет. Эти изменения, как правило, происходят
в результате воздействия на объект, которое порождает некоторую ответную
реакцию самого объекта. Действия, которые можно выполнить по
отношению к данному объекту, и реакция объекта на них определяют
абстракцию поведенческой характеристики. С точки зрения
программирования она задается специальной функцией (методом).
Абстракцию множества объектов, которые имеют общий набор свойств
и обладают одинаковым поведением, называют классом. Каждый объект в
этом случае рассматривается как экземпляр соответствующего класса.
Объекты, которые не имеют полностью одинаковых характеристик или не
обладают одинаковым поведением, по определению, не могут быть отнесены
к одному классу.
Например, в класс «Велосипед» добавим характеристики, которые
описывают текущее состояние велосипеда в процессе использования
СостояниеВелосипеда (стоит или двигается), ТекущаяСкорость и
НомерПередачи. Изменяют эти свойства соответствующие им методы.
Например, метод Остановить() может изменить поле
ТекущаяСкорость на значение 0.0 и поле СостояниеВелосипеда на
значение false.
на операциях, которые описывают его поведение. В этом и заключается
абстрагирование.
      При абстрагировании выделяются те характеристики объекта, которые
отличают его от всех других видов объектов и, таким образом, четко
определяют его концептуальные границы с точки зрения наблюдателя.
      Классы объектной модели представляют собой абстракции сущностей
предметной области задачи. Выбор правильного набора абстракций для
заданной предметной области представляет собой главную задачу объектно-
ориентированного проектирования.
      Абстракция структурной характеристики объекта определяется своим
именем и множеством значений, которые она может принимать. Например,
свойство велосипеда «цвет» может принимать значения «красный»,
«зеленый», «серебристый» и др., свойство «количество передач» – 1, 4, 8 и
др., «стоимость» - 15 000 рублей, 40 000 рублей и т.д. С точки зрения
программирования множество значений определяется типом данных
переменной, которая будет хранить значение этой характеристики.
      В процессе использования объекта значения структурных
характеристик могут изменяться. Например, увеличилась стоимость
велосипеда или поменялся его цвет. Эти изменения, как правило, происходят
в результате воздействия на объект, которое порождает некоторую ответную
реакцию самого объекта. Действия, которые можно выполнить по
отношению к данному объекту, и реакция объекта на них определяют
абстракцию      поведенческой    характеристики.    С     точки    зрения
программирования она задается специальной функцией (методом).
      Абстракцию множества объектов, которые имеют общий набор свойств
и обладают одинаковым поведением, называют классом. Каждый объект в
этом случае рассматривается как экземпляр соответствующего класса.
Объекты, которые не имеют полностью одинаковых характеристик или не
обладают одинаковым поведением, по определению, не могут быть отнесены
к одному классу.
      Например, в класс «Велосипед» добавим характеристики, которые
описывают текущее состояние велосипеда в процессе использования –
СостояниеВелосипеда (стоит или двигается), ТекущаяСкорость и
НомерПередачи. Изменяют эти свойства соответствующие им методы.
Например,      метод     Остановить()         может     изменить     поле
ТекущаяСкорость на значение 0.0 и поле СостояниеВелосипеда на
значение false.
                                                                       21