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

Приховання інформації

Читайте также:
  1. Визначення обліку. Види обліку. Користувачі облікової інформації
  2. Для отримання інформації про консульський збір, натисніть тут
  3. Засоби масової інформації як «четверта влада»
  4. Захист акустичної інформації у приміщеннях
  5. Захист інформації від витоку по каналу побічних електромагнітних випромінювань та наведень (ПЕМВН)
  6. ЗВ'ЯЗОК ОРГАНІЗАЦІЇ ВИКОРИСТАННЯ АРХІВНОЇ ІНФОРМАЦІЇ З ІНШИМИ НАПРЯМАМИ РОБОТИ АРХІВНИХ УСТАНОВ
  7. Класифікація документальних джерел інформації
  8. Класифікація інформації
  9. Класифікація інформації наукового дослідження.
  10. Класифікація інформації щодо стану досліджуваного об’єкта
  11. КЛАСИФІКАЦІЯ ПОТРЕБ І СПОЖИВАЧІВ АРХІВНОЇ ІНФОРМАЦІЇ
  12. Методи захисту інформації від випадкових загроз

Як бачимо, абстракція змушує створювати функціональні специфікації для кожного модуля, роблячи його відкритим (publіc) для зовнішнього миру. Однак вона дозволяє ідентифікувати деталі, які повинні бути сховані від публічного огляду, - тобто бути закритими (prіvate). Принцип приховання інформації (іnformatіon hіdіng) гарантує, що такі деталі будуть не тільки сховані усередині модуля, але й жоден інший модуль не буде навіть підозрювати про їхнє існування.

Принцип приховання інформації обмежує способи роботи з функціями й даними. Користувач модуля не повинен цікавитися деталями його реалізації. Розроблювач модуля не повинен піклуватися про способи його використання.

Объектно-орієнтоване проектування

Один зі способів модульного рішення завдання - ідентифікація об'єктів (objects), що поєднують у єдине ціле дані й операції над ними. У результаті такого объектно-ориентированного підходу (object-orіented approach) до модульного рішення завдання виникає сукупність об'єктів, що володіють певним поводженням.

Три принципи объектно-ориентированного програмування

1. Інкапсуляція: об'єкти поєднують дані й операції.

2. Спадкування: класи можуть успадковувати властивості інших класів.

3. Поліморфізм: об'єкти можуть вибирати підходящі операції під час виконання програми.

Проектування "зверху вниз" або декомпозиція

Рисунок

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

При розробці алгоритму для конкретної функції або в ситуаціях, коли на перше місце виходить алгоритм, а не дані, з якими він працює, модульне рішення можна одержати за допомогою проектування "зверху вниз" (top-down desіgn). У той час як за допомогою объектно-ориентированного підходу можна идентифици ровать дані, ґрунтуючись на іменах іменників, використаних в описі завдання, проектування "зверху вниз" засновано на аналізі дієслів.

Стратегія проектування "зверху вниз" заснована на послідовному зниженні рівня деталізації завдання. Розглянемо простий приклад. Допустимо, що нам потрібно обчислити середню екзаменаційну оцінку. На малюнку показана структурна схема (structіre chart), що ілюструє ієрархію модулів і взаємодія між ними.

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

Зверніть увагу, що на малюнку завдання розбивається на три незалежні подзадачи.

Рахувати екзаменаційні оцінки

Впорядкувати оцінки

Визначити "середню" оцінку

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


1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 |

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



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