- •_________________________
- •Тема 2.Поняття про структури даних.
- •Тема 3.Поняття про тип даних.
- •Тема 4. Види та методи абстракції в програмуванні.
- •Тема 1. Поняття про абстрактні типи даних (а.Т.Д.). Специфікація а.Т.Д.
- •Тема 2. Процедурна абстракція. Специфікація процедурної абстракції.
- •Тема 3. Поняття про виключні ситуації. Виключні ситуації як засіб спілкування програм.
- •Тема 4. Абстракція ітерації.
- •Тема 1. Реалізація абстракції даних.
Тема 3.Поняття про тип даних.
Поняття типової безпеки. Поняття типу.
Класифікація засобів визначення даних у мовах програмування:
1) засоби структурування даних;
2) засоби визначення нового типу;
3) засоби визначення абстрактних типів даних (А.Т.Д.);
4) засоби об’єктно-орієнтованого програмування (ООП).
Покоління мов програмування високого рівня. Встроєні та користувацьки типи даних. Властивості вбудованих типів даних.
Теорія структурної організації даних Хоара.
Питання до студентів:
Дайте визначення поняттю “типова безпека”. Що таке контроль типів?
Що таке “ слабо типізована мова” і “ сильно типізована мова” ?
Що таке “ статично типізована мова” і “ динамічно типізована мова” ?
Дайте визначення поняттю “тип даних”. Чому це поняття не є таким точним?
Що забезпечують мови програмування з засобами структурування даних? Назвіть недоліки мов програмування даного рівня.
Коли з’явились мови програмування з засобами визначення нових типів?Назвіть переваги і недоліки мов програмування даного рівня.
Сформулюйте концепцію А.Т.Д. Назвіть переваги і недоліки мов програмування даного рівня.
Сформулюйте концепцію ООП. Коли має сенс використовувати засоби цього рівня?
Наведіть класифікацію мов програмування високого рівня.
Наведіть властивості вбудованих типів даних. Наведіть причини розширення мов програмування користувацькими типами даних.
Наведіть приклади мов програмування що відносяться до класу “мова ядро” і “мова оболонка”. Які мови на вашу думку мають переваги і чому?
Наведіть основні положення теорії структурної організації даних Хоара.
Наведіть основні філософські засади розробки мови програмування ПАСКАЛЬ.
Наведіть основні філософські засади розробки мови програмування C.
Наведіть основні філософські засади розробки мови програмування C++.
Тема 4. Види та методи абстракції в програмуванні.
Абстракція тадекомпозиція та їх взаємодія у процесі розробки програм.
Поняття декомпозиції.
Поняття абстракції.
Поняття специфікації.
Поняття реалізації.
Методи абстракції: абстракція крізь параметрізацію та абстракція крізь специфікацію.
Види абстракції: процедурна абстракція, абстракція даних та абстракція крізь ітерацію.
Питання до студентів:
У чому полягає необхідність процесу декомпозиції при розробці програм?
Назвіть основні складові процесу декомпозиції.
Чому декомпозицію треба проводити на базі абстракцій?
Що таке абстракція? Що дає абстракція математиці, а що - програмуванню?
Що таке специфікація? Чому абстракція неможлива без специфікації?
Що таке психологічна константа “ 7 +/- 2 “? Як вона впливає на процес розробки програм?
Які стосунки існують між абстракцією, специфікацією та реалізацією?
Назвіть види та методи абстракції.
Що дає абстракція через параметризацію?
Що дає абстракція через специфікацію?
Назвіть основну мету використання процедурної абстракції.
Назвіть основну мету використання абстракції даних.
Назвіть основну мету використання абстракції через ітерацію.
Змістовий модуль ІI. Теорія А.Т.Д.