Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ООП Лекция №1.docx
Скачиваний:
5
Добавлен:
03.03.2016
Размер:
40.17 Кб
Скачать

1.4 Операції

Операцією називається певний вплив одного об'єкта на іншій з метою викликати відповідну реакцію.

Операція - це послуга, що клас може надати своїм клієнтам.

Типовий клієнт робить над об'єктами операції п'яти видів:

  1. модифікатор;

  2. селектор;

  3. iтератор;

  4. конструктор;

  5. деструктор.

Модифікатор - операція, що змінює стан об'єкта.

Селектор - операція, що зчитує стан об'єкта, але не міняє стану.

Iтератор - операція, що дозволяє організувати доступ до всіх частин об'єкта в строго визначеній послідовності.

Конструктор - операція створення об'єкта та/або його ініціалізації.

Деструктор - операція, що звільняє стан об'єкта та/або руйнує сам об'єкт.

Дві операції є універсальними; вони забезпечують інфраструктуру, необхідну для створення та знищення екземплярів класу: Конструктор і Деструктор .

Приклад 1.12:

Реалізація стека за допомогою однозв'язного списку

У мові Ci використали функції:

1) додати itemу початок спискуst:

STACK * push (STACK * st, int item);

2) видалити елемент на початку списку st:

int pop (STACK * st, int * err);

3) подивитися елемент на початку списку st, не змінюючи список:

int peek (STACK * st, int * err);

4) вивести вміст списку на екран

void display(STACK st);

Для цього поняття “стек”:

  1. модифікатори:

  • push

  • pop

  • селектор:

    • peek

  • iтератор:

    • display

    1.5 Ролі та відповідальності

    Сукупність всіх методів і вільних процедур, що ставляться до конкретного об'єкта, утворюють протокол цього об'єкта.

    Протокол визначає поведiнку об'єкта, що охоплює всі його статичні та динамічні аспекти.

    Корисно підрозділяти протокол на приватні аспекти поведiнки, які називають ролями.

    Роль - це маска, що носить об'єкт; вона визначає контракт абстракції з її клієнтами.

    Більшість об'єктів виконують у своєму житті різні ролі:

    Приклад 1.13:

    Пакет акцій:

    • для фондового брокера - це товар, якому можна купувати або продавати;

    • для юриста - це знак володіння певними правами.

    Приклад 1.14:

    Персона

    Протягом дня та сама персона може грати ролі:

    • батька(у родині);

    • брокера або юриста(на роботі);

    • садівника(після роботи);

    • кінокритика(після відвідування кінотеатру).

    Ролі пакета акцій злегка перекриваються, але кожна з них залежить від того, що клієнт із ними робить.

    У випадку персони ролі динамічно змінюються щохвилини.

    1.6 Об'єкти як автомати

    Наявність внутрішнього стану об'єктів означає, що порядок виконання операцій має істотне значення.

    Можна представити об'єкт у якості маленької незалежної машини (автомата).

    Для ряду об'єктів часовий порядок виконання операцій настільки істотний, що найкращим способом їхнього формального опису буде кінцевий автомат.

    За аналогією з машинами об'єкти можуть бути активними та пасивними.

    Активний об'єкт має свій потік керування, а пасивний - не має.

    Активний об'єкт у загальному випадку автономний, тобто він може проявляти свою поведiнку без впливу з боку інших об'єктів.

    Пасивний об'єкт, навпроти, може змінювати свій стан тільки під впливом інших об'єктів.

    Активні об'єкти системи - джерела керуючих впливів.

    1.7 Ідентичність

    Ідентичність - це така властивість об'єкта, що відрізняє його від всіх інших об'єктів.

    Джерелом безлічі помилок в об'єктно-орiєнтованому програмуванні є невміння відрізняти ім'я об'єкта від самого об'єкта.

    Для ідентифікації об'єкта зазвичай використовується його ім'я.

    Ответы

    1. Об'єкт – це предмет, поняття або явище реального миру, щось, що має чітко обкреслені границі, відчутна реальність, що проявляє чітко виділювану поведiнку

    2. Стан включає: імена властивостей, значення властивостей

    3. Поведiнка – це те, як об'єкт діє, його діяльність, що ззовні перевіряється

    4. “Опускання монети в об'єкт - торговельний автомат із продажу напоїв”. Це операція модифікатор

    5. Сукупність всіх методів і вільних процедур конкретного об'єкта, утворюють його протокол

    6. Об'єкт, який має свій потік керування, називається активний

    7. Об'єкт володіє: станом, властивостями, поведінкою, ідентичністю вроде верно, но не принимает (хотя балл заносится), если у вас получилось-напишите правильный вариант

    8. Поведiнка – це його діяльність, що спостережується, те, як об'єкт реагує

    9. Методи - це функції, які змінюють властивості об'єкта, використають властивості об'єкта

    10. “Відображення на екрані об'єкта - терміналу з прийому платежів - суми внесених ”. Це операція селектор

    11. Властивість об'єкта, що відрізняє його від всіх інших об'єктів, називається ідентичність

  • Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]