АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Примітка. Звичайно, розглянутий приклад має методичний характер і ілюструє лише основні особливості поведінки поштової програми-клієнта в одному з її аспектів

Читайте также:
  1. Примітка
  2. Примітка
  3. Примітка
  4. Примітка
  5. Примітка
  6. Примітка
  7. Примітка
  8. Примітка
  9. Примітка
  10. Примітка
  11. Примітка

Звичайно, розглянутий приклад має методичний характер і ілюструє лише основні особливості поведінки поштової програми-клієнта в одному з її аспектів. І навіть цей аспект завантаження пошти багато в чому умовний, оскільки не враховує реакцію програми на такі повідомлення, як "лінія зайнята" або мимовільний розрив з'єднання.

Мова йде про те, що в окремих випадках може відбутися рідкісна, але вельми неприємна подія, що отримала назву "залипання модему". Це характерно для ситуації, коли вся пошта завантажена, а автоматичний розрив з'єднання не відбувається. Проте й цей випадок можна передбачити в нашій моделі, доповнивши діаграму ще одним переходом з аналогічною подією-тригером "закінчити завантаження пошти" і з новою сторожовою умовою. Ця сторожова умова повинна перевіряти максимально допустимий час з'єднання для завантаження пошти (наприклад, 600 секунд) і може бути сформульована у вигляді "час завантаження пошти перевищує 600 секунд". Модифікувати діаграму станів для цього випадку пропонується самостійно як вправа.

20.3.3.Вираз дії

Вираз дії (action expression) виконується в тому й лише в тому випадку, коли перехід спрацьовує. Являю собою атомарну операцію (достатньо просте обчислення), що виконується відразу після спрацьовування відповідного переходу до початку яких би то не було дій в цільовому стані. Атомарність дії означає, що вона не може бути перервана ніякою іншою дією до тих пір, поки не закінчиться її виконання. Дана дія може робити вплив як на сам об'єкт, так і на його оточення, якщо це з очевидністю виходить з контексту моделі. Вираз записується після знаку "/" в рядку тексту, приєднаному до відповідного переходу.

У загальному випадку, вираз дії може містити цілий список окремих дій, розділених символом ";". Обов'язкова вимога – всі дії зі списку повинні чітко розрізнятися між собою й слідувати в порядку їх запису. На синтаксис запису виразів дії не накладається ніяких обмежень. Головне – їх запис має бути зрозумілий розробникам моделі і програмістам. Тому найчастіше цей вираз записують на одній з мов програмування, яку передбачається використовувати для реалізації моделі.

Як приклад виразу дії (див. рис. 20.5) може служити "розірвати телефонне з'єднання” (телефонний номер), яка має бути виконана відразу після встановлення істинності ("істина") сторожової умови "поштова скринька на сервері порожня".

Іншим прикладом може служити очевидна ситуація з виділенням графічних об'єктів на екрані монітора при одноразовому натисненні лівої кнопки миші. Мається на увазі опрацювання сигналів від користувача при виділенні тих або інших графічних примітивів (піктограм). У цьому випадку відповідний перехід може мати наступний рядок тексту: "натиснута і відпущена ліва кнопка миші (координати) [координати в області графічного об'єкту] / виділити об'єкт (колір)”. Результатом цього тригерного переходу може бути, наприклад, активізація деяких властивостей об'єкту (розмір файлу в рядку стану) або подальше його видалення в корзину.


1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.004 сек.)