Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
AlgStr / Библиотека / Программы / Опорный конспект.doc
Скачиваний:
31
Добавлен:
23.03.2015
Размер:
141.31 Кб
Скачать

Тема 1. Поняття про абстрактні типи даних (а.Т.Д.). Специфікація а.Т.Д.

А.Т.Д. як засіб визначення даних. Історія виникнення поняття А.Т.Д.

Чотири частини А.Т.Д,:

1) зовнішність;

2) абстрактний опис;

3) конкретний опис;

4) опис взаємовідносин між конкретним та абстрактним описом.

Реалізація А.Т.Д. у мові CLU. Кластер як засіб абстракції даних у мові CLU. Специфікація А.Т.Д.

Параметризовані А.Т.Д.

Приклади специфікацій абстракції даних.

Питання до студентів:

  1. У чому полягає необхідність внесення засобів А.Т.Д. у мови програмування високого рівня?

  2. Порівняйте “поняття” у математиці і “засоби А.Т.Д.” у програмуванні.

  3. Наведіть класифікацію засобів А.Т.Д. у різних мовах програмування.

  4. У чому полягає обмеженість засобів А.Т.Д. у сучасних мовах програмування?

  5. Наведіть складові частини засобів А.Т.Д. Яка мова програмування найбільш послідовно підтримує засоби А.Т.Д.?

  6. Сформулюйте концепцію А.Т.Д., що реалізована у мові CLU. Чому кластер справедливо вважається засобом А.Т.Д.

  7. Що таке інкапсуляція і чому їй надається така увага при розробці мов програмування високого рівня?

  8. Наведить загальний вигляд специфікації абстракції даних.

  9. Що таке “параметризований тип даних” і які переваги він надає при розробці складних програм?

  10. Як можна реалізувати параметризований тип у мові програмування ПАСКАЛЬ?

  11. Як можна реалізувати параметризований тип у мові програмування C++?

Тема 2. Процедурна абстракція. Специфікація процедурної абстракції.

Поняття процедури.

Процедури і математичні функції.

Специфікація процедурної абстракції.

Взаємодія різних частин специфікації процедурної абстракції.

Переваги абстракції через параметризацію.

Переваги абстракції через специфікацію.

Переваги програм, що мають властивості локальності і модифікованості.

Приклади специфікації процедурної абстракції.

Питання до студентів:

  1. Наведіть визначення процедури.

  2. Чим відрізняється процедура від математичної функції?

  3. Наведіть загальний вигляд специфікації процедурної абстракції.

  4. Для чого слугує частина Requires специфікації процедурної абстракції?

  5. Для чого слугує частина Modifies специфікації процедурної абстракції?

  6. Для чого слугує частина Effects специфікації процедурної абстракції?

  7. Як взаємодіють частини Requires і Effects специфікації процедурної абстракції?

  8. Як взаємодіють частини Requires і Signals специфікації процедурної абстракції?

  9. Як взаємодіють частини Signals і Effects специфікації процедурної абстракції?

  10. У чому полягають переваги абстракції через параметризацію?

  11. У чому полягають переваги абстракції через специфікацію?

  12. Які переваги надають програмам властивості локальності і кодифікованості?

Тема 3. Поняття про виключні ситуації. Виключні ситуації як засіб спілкування програм.

Поняття про виключну ситуацію.

Специфікація виключних ситуацій.

Реалізація виключних ситуацій у мові CLU. Обробка виключних ситуацій. Використання виключних ситуацій для розробки стійких до помилок програм.

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

Питання до студентів:

  1. Наведіть визначення виключної ситуації.

  2. Що таке стійка програма? Як можна програму зробити стійкою до помилок?

  3. Що таке поняття “програма має гарну деградацію”?

  4. Наведіть загальний вигляд специфікації процедурної абстракції з використанням виключних ситуацій.

  5. Охарактеризуйте механізм виключних ситуацій у мові CLU.

  6. Чи завжди виключні ситуації у програмі пов’язані з помилками?

  7. У чому полягає відмінність діалогу програми з користувачем і взаємодія програмних одиниць за допомогою механізма виключних ситуацій?

  8. Як використовувати механізм виключних ситуацій при розробці стійких до помилок програм?

Соседние файлы в папке Программы