Что определяют свойства действия и состояния объекта
Перейти к содержимому

Что определяют свойства действия и состояния объекта

  • автор:

Объекты и их имена. Признаки объектов.

на главную

Объект – это любая часть окружающей действительности (предмет, процесс, явление), воспринимаемая человеком как единое целое.

    Объекты-предметы: телефон, стол, котик;

Каждый объект имеет имя, которое позволяет его отличать от других объектов. Имя объекта называем, отвечая на вопрос «Что это такое?» или «Кто это такой?».
Более подробно можно узнать из презентации Объекты и их имена (по УМК Л.Л.Босовой)
Один и тот же объект окружающего мира может получать разные имена. Например, если Вы гуляете со своей собакой на улице, то для окружающих это просто «собака», в то время как Вы сами называете свою собаку «Тузик».
Имена могут быть общими, обозначающими множество объектов, и единичными, обозначающими конкретный объект в некотором множестве. Книга-имя общее, красная книга с третьей полки стеллажа – имя единичное. Чтобы сократить длинные единичные имена придумывают собственные имена. Пример с книгой это может быть название и автор.

Признаки объектов

Кроме имени объект может содержать ещё и признаки: свойства, действия, поведение, состояние.
Более подробно можно узнать из презентации Признаки объектов (по УМК Л.Л.Босовой)
Свойства объектов отвечают на вопросы: «Чем может отличаться один объект от другого?» Что может измениться у объекта при выполнении действия?».Например, кошки отличаются породой, города – численностью населения или площадью, при нагревании воды увеличивается её температура.Каждое свойство определяется величиной и значением, которое эта величина принимает. Например, величины: цвет, материал, форма, длина могут принимать значения: синий, стеклянный, треугольный, 5 см.
Возможности объекта обозначаются именами действий, отвечающими на вопросы «Что он может делать?» или «Что с ним можно делать?». Таким образом, именами действий обозначаются процессы, которые могут происходить с объектом. Воздушный шар можно надуть и он летает.
Поведение объекта требует пошагового описания каждого действия, свойственного этому объекту. Одни и те же действия различные объекты выполняют по-разному. Например действия строить человек может выполнить различными способами в зависимости от объекта строительства (строить дом, мост, метро).
Говоря о состоянии объекта, человек называет или подразумевает определённое сочетание значений всех или некоторых свойств этого объекта. Например, хорошая погода – это сочетание нескольких условий. Определённая температура воздуха (тепло), отсутствие сильного ветра (тихо) и осадков (солнечно).

§ 1.2. Признаки объектов

Кроме имени в сообщении об объекте человек может подробно перечислить его признаки: свойства, действия, поведение, состояния.

Свойства объектов отвечают на вопросы: «Чем может отличаться один объект от другого?», «Что может измениться у объекта при выполнении действия?». Например, собаки могут отличаться друг от друга окрасом, города — численностью населения, реки — длиной; при редактировании документа его размер может уменьшиться, при нагревании воды увеличивается ее температура.

Каждое свойство определяется некоторой величиной и тем значением, которое она принимает. Примеры величин: цвет, материал, форма, длина. Примеры значений: красный, железный, прямоугольный, 2 м.

В табл. 1.1 приведены объекты, их свойства, а также величины и значения величин, соответствующие этим свойствам.

Таблица 1.1

Возможности объекта обозначаются именами действий, отвечающими на вопросы «Что он может делать?» (активное действие) или «Что с ним можно делать?» (пассивное действие). Другими словами, именами действий обозначаются процессы, которые могут происходить с объектом. Например, далматин бегает, операционная система управляет работой компьютера, воздушный шар можно надуть, файл — переименовать, модифицировать, удалить и т. д.

Чтобы описать поведение объекта, нужно не просто назвать имена действий, а составить пошаговое описание каждого действия, свойственного этому объекту. Без этого информация об объекте будет неполной. Ведь действие с одним и тем же именем различные объекты могут совершать по-разному. Например, птицы, воздушные шары и вертолеты неодинаково летают, а действие «строить» человек по-разному выполняет с домами, мостами и тоннелями.

Говоря о состоянии объекта, человек называет или подразумевает определенное сочетание значений всех или некоторых свойств этого объекта. Например, под хорошей погодой человек может понимать определенную температуру воздуха (тепло), отсутствие сильного ветра (тихо) и осадков (солнечно). Когда с объектом выполняется действие, его состояние изменяется. Например, с воздушным шариком можно связать величины «объем» (в литрах), «высота» (в метрах над землей) и «поврежденность» (наличие дырок). Когда воздушный шар надувают, изменяется его объем. Во время полета шара будет увеличиваться высота, на которой он находится. А когда шарик лопнет и упадет, изменятся значения сразу всех трех величин.

Все объекты, с которыми работает компьютер (программы, документы, папки, диски и т. д.), изображаются на экране небольшими картинками — значками. Описания этих объектов легко получить с помощью контекстного меню (его открывают щелчком правой кнопкой мыши на значке объекта). В контекстном меню приведены все действия, которые можно выполнить с объектом. Например, документ можно открыть, проверить на вирусы, переименовать, скопировать, отправить по почте, удалить. Последний пункт контекстного меню любого объекта называется Свойства. С его помощью можно не только узнать свойства объекта, но и изменить некоторые из них.

Коротко о главном

В сообщении об объекте человек может описать его признаки — свойства, действия, поведение, состояния.

Свойства объектов отвечают на вопросы: «Чем может отличаться один объект от другого?», «Что может измениться у объекта при выполнении действия?». Каждое свойство определяется величиной и тем значением, которое она принимает. Значения величин выражаются числами или словами.

Возможности объекта обозначаются именами действий, отвечающими на вопросы «Что он может делать?» (активное действие) или «Что с ним можно делать?» (пассивное действие).

Чтобы описать поведение объекта, нужно не просто назвать имена действий, а составить пошаговое описание каждого действия, свойственного этому объекту.

Говоря о состоянии объекта, человек называет или подразумевает определенное сочетание значений всех или некоторых свойств этого объекта.

Вопросы и задания

  1. Все ли свойства объекта следует приводить в каждой конкретной ситуации? Приведите примеры.
  2. Какие свойства можно привести при описании множества объектов? Можно ли для множества объектов привести значения величин? Приведите примеры.
  3. Каким образом можно узнать свойства интересующих вас объектов?
  4. Назовите свойства объекта операционной системы Windows «Рабочий стол».
  5. Для свойств каждого из приведенных объектов укажите величину и значение.

  • Какие действия можно совершать с объектами «файл» и «папка»?
  • Одно из действий в контекстном меню объекта операционной системы Windows всегда выделено полужирным шрифтом. Какое это действие? Почему выбрано именно оно? Каким образом можно выполнить это действие без контекстного меню?
  • Как известно, действия над основными объектами операционной системы Windows можно выполнять несколькими способами:
    1. с помощью команд строки меню;
    2. с помощью кнопок панелей инструментов, дублирующих команды меню;
    3. с помощью команд контекстного меню;
    4. с помощью технологии «Drag&Drop».
      а) собрать;
      б) заполнить;
      в) открыть;
      г) связать;
      д) включить;
      е) сложить;
      ж) измерить;
      з) поймать.
      а) Значением какой величины определяется переход чайника в состояние «кипит»?
      б) В каком состоянии находится вода, если ее нельзя вылить из чашки?
      в) В каком состоянии находится карандаш, когда с его помощью нельзя ничего написать или нарисовать?
      г) В каком состоянии находится долька яблока, если ее можно согнуть и она при этом не ломается?

    Что определяют свойства действия и состояния объекта

    Объект – это любая часть окружающей нас действительности, воспринимаемая как единое целое.

    Объекты-предметы — здание, кошка, лист

    Объекты-процессы – прогулка, рыбалка, чтение.

    Объекты-явления – закат, молния, дождь.

    Каждый объект имеет имя, отличающее его от других объектов.

    Общие имена обозначают множество объектов

    город

    учебник

    кошка

    Единичные имена обозначают конкретный объект в некотором множестве

    Город Москва

    Учебник Информатика

    Собственные имена пишутся с большой буквы

    А. С. Пушкин

    Река Лена

    Книжка «Незнайка на Луне»

    Моя кошка Мурка

    Кроме имени объекта человек может перечислить его признаки. Признаки объектов: свойства, действия, поведение, состояние

    Свойства объекта

    Чем может один объект отличаться от другого? Например, собаки могут отличаться друг от друга окрасом, породой; города могут отличаться численностью, реки – длинной. Каждое свойство определяется некоторой величиной и тем значением, которое она принимает. Пример величины — цвет, форма, размер, длина, а пример значения – красный, прямоугольная, большой, 2 метра.

    Действия объекта

    Действия могут быть активные и пассивные. Что объект может делать? или Что с объектом можно делать?

    Например: собака – бегает или её кормят, воздушный шар – летает или его надувают, файл – копируют.

    Поведение объекта

    Поведение — описание каждого действия, свойственного объекту.

    Чтобы назвать поведение объекта нужно назвать не просто его действия, а необходимо составить пошаговое описание каждого действия, свойственного данному объекту. Например, птицы, воздушные шары и самолёты неодинаково летают, нужно описать подробнее полет каждого объекта, чтобы понять какой это объект.

    Состояние объекта

    Состояние — сочетание значений всех или некоторых свойств объекта.

    Например, на данной картинке можно описать состояние воздушного шара, который держит Винни Пух.

    Множество – это совокупность, набор, коллекция объектов. Объекты, составляющие некоторое множество, называются его элементами. Примеры: букет цветов, хор, стая птиц.

    Что изучает информатика?

    Информатика — наука, изучающая закономерности протекания процессов передачи, хранения и обработки информации в природе, обществе, технике, а также способы автоматизации этих процессов с помощью компьютера.

    Объекты информатики – информация, информационный процесс, исполнитель, алгоритм, компьютер.

    Что определяют свойства действия и состояния объекта

    На этом шаге рассмотрим понятие поведения объекта.

    Ни один объект не существует в изоляции от других. Все объекты либо подвергаются воздействию, либо сами воздействуют на другие объекты. Таким образом, можно дать следующее определение.

    Поведение — это действия и реакции объекта, выраженные через изменения состояния объекта и передачу сообщений.

    Иначе говоря, поведение объекта — это его видимая извне деятельность.

    Операцией называется определенное воздействие одного объекта на другой с целью вызвать некую реакцию. Например, клиент может активизировать операции append и pop, чтобы увеличить или уменьшить объект-очередь. Кроме того, выполнив операцию length, клиент может определить размер очереди, но не может изменить ее состояние.

    В языке Java операции, которые может выполнить клиент, называются методами. Используя терминологию языков, являющихся наследниками процедурно- ориентированных языков программирования, например, языка C++, говорят, что один объект вызывает функцию-член другого. В чистых объектно-ориентированных языках, таких как Smalltalk, это явление описывается как передача сообщений между объектами. Сообщение — это операция, которую один объект выполняет над другим, хотя механизмы диспетчеризации сообщений и операции отличаются друг от друга. В дальнейшем будем считать термины операция и сообщение синонимами.

    Передача сообщений — это лишь часть уравнения, описывающего поведение объекта, поскольку оно зависит и от его состояния. Вернемся к торговому автомату. Покупатель может сделать выбор, нажав кнопку, но реакция автомата будет зависеть от его состояния. Если клиент не опустит в него достаточную сумму, то автомат, вероятнее всего, никак не отреагирует. Если же денег достаточно, то автомат примет оплату и выполнит заказ (изменив тем самым свое состояние).

    Таким образом, поведение объекта зависит как от выполняемых над ним операций, так и от его состояния, причем некоторые операции косвенно изменяют состояние объекта. Концепция побочного действия позволяет сформулировать следующее определение. Состояние объекта представляет собой суммарный результат его поведения.

    Наиболее интересными являются объекты, не имеющие статичного поведения: их состояние описывается значениями, доступными для модификаций и запросов. Рассмотрим теперь понятие операции, ее связь с предназначением объекта и способы реализации обязанностей объекта с помощью операций.

    1. Модификатор: операция, изменяющая состояние объекта.
    2. Селектор: операция, имеющая доступ к состоянию объекта, но не изменяющая его.
    3. Итератор: операция, обеспечивающая доступ ко всем частям объекта в строго определенном порядке.
    1. Конструктор: операция, создающая объект и/или инициализирующая его состояние.
    2. Деструктор: операция, стирающая состояние объекта и/или уничтожающая сам объект.

    В языке C++ конструктор и деструктор являются частью определения класса, а в языке Java есть конструкторы, но нет деструкторов. В языке Smalltalk эти операции обычно образуют часть протокола метакласса (т.е. класса классов).

    Совокупность всех методов, связанных с конкретным объектом, образует его протокол. Таким образом, протокол объекта описывает поведение объекта и содержит все его статические и динамические свойства. Работая со сложными абстракциями, полезно разделять протокол на логические группы свойств. Эти свойства описывают роли, которые может исполнять объект. Роль — это маска, которую носит объект [Adams, S. 1993. Private communication.]. Она определяет контракт абстракции с ее клиентами.

    «Обязательства объекта выражают смысл его предназначения и место в системе. Обязательства — это совокупность всех услуг, предусмотренных во всех контрактах» [Wirfs-Brock, R., Wilkerson, В., and Wiener, L. 1990. Designing Object-Oriented Software. Englewood Cliffs, NJ: Prentice Hall, p. 61.]. Иначе говоря, можно сказать, что состояние и поведение объекта совместно определяют исполняемые им роли, а те, в свою очередь, обеспечивают выполнение обязанностей данной абстракции.

    • Банковский счет может играть роль денежного актива, а его владелец может класть деньги на счет и снимать деньги со счета. С другой стороны, для налоговой инспекции этот счет может играть роль некоей сущности, которая должна каждый год отчитываться о начисленных дивидендах.
    • Для фондового брокера пакет акций представляет собой сущность, которую можно купить или продать, а для адвоката — это юридический инструмент, предоставляющий определенные права.
    • В течение дня один и тот же человек может играть роль матери, врача, садовника и кинокритика.

    Роли объекта носят динамический характер, но могут быть и взаимоисключающими. Например, роли пакета акций немного перекрываются, но по отношению к клиенту они являются статическими. Роли людей являются динамическими и со временем могут изменяться.

    Анализ часто начинается с изучения разных ролей, которые играет объект. Во время проектирования они уточняются с помощью конкретных операций, реализующих обязанности, связанные с каждой ролью.

    Наличие внутреннего состояния объектов означает, что порядок выполнения операций имеет большое значение. Это обстоятельство наводит на мысль представить объект в качестве маленького независимого автомата [Macintosh MacApp 1.1.1 Programmer s Reference. 1986. Cupertino, CA: Apple Computer, p. 4.]. Действительно, для ряда объектов временное расписание событий настолько важно, что наилучшим способом их формального описания является эквивалентный конечный автомат.

    Продолжая аналогию, можно разделить объекты на активные и пассивные. Активный объект имеет собственный поток управления, в отличие от пассивного. Активные объекты обычно автономны, т.е. могут демонстрировать определенное поведение без воздействия со стороны других объектов. Пассивные объекты, наоборот, могут изменять свое состояние только под воздействием других объектов.

    Таким образом, активные объекты системы — это источники управляющих воздействий (roots of control). Если в системе существуют несколько потоков управления, то в ней обычно действуют несколько активных объектов. С другой стороны, в последовательных системах в каждый момент времени существует, как правило, только один активный объект, например, диспетчер, распределяющий сообщения. В таких архитектурах все остальные объекты являются пассивными, а их поведение изменяется только тогда, когда они получают сообщение от активного объекта.

    В последовательных архитектурах другого типа (например, в системах обработки транзакций) нет явного центра активности, и управление распределено среди пассивных объектов системы.

    На следующем шаге рассмотрим понятие индивидуальности объекта.

  • Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *