- •Рейтингова система оцінювання знань та умінь з ооп 2012-2013 н.Р.
- •Вимоги до звіту з лабораторних робіт
- •Класи потоків Лабораторна робота 1
- •1.1 Теоретичні відомості
- •1.1.1. Методи класів потоків
- •1.1.2. Маніпулятори
- •1.1.3. Деякі методи класів файлових потоків
- •1.2 Приклад програми Умова задачі
- •Алгоритм задачі
- •Текст програми
- •Результати виконання програми
- •1.3 Варіанти завдань
- •1.4 Контрольні запитання
- •Інкапсуляція. Інтерфейси класів . Діаграми прецедентів і класів Лабораторна робота 2
- •2.1 Теоретичні відомості Етапи об’єктно-орієнтованого проектування та моделювання
- •Діаграма варіантів використання(use-case diagram)
- •Ідентифікація класів
- •Ідентифікація атрибутів
- •Ідентифікація операцій (методів)
- •Типові схеми uml діаграм
- •2.2 Програма роботи
- •2.3 Варіанти завдань
- •2.4 Приклад виконання роботи Задача
- •Об’єктно-орієнтоване проектування Зображення класів в uml
- •Ідентифікація атрибутів
- •Структура проекту
- •Інтерфейси та реалізації класів програми
- •2.5 Контрольні запитання
- •Конструктори та деструктори класів Діаграми прецедентів і класів Лабораторна робота 3
- •3.1 Теоретичні відомості
- •3.2 Програма роботи
- •3.3 Варіанти завдань
- •3.4 Приклад виконання роботи Задача
- •Реалізація конструкторів і деструкторів деяких класів
- •3.5 Контрольні запитання
- •Методи класів: аксесори, ітератори, утілити, предикатні функції . Діаграми класів, діяльності, послідовності Лабораторна робота № 4
- •4.1 Теоретичні відомості
- •4.2 Програма роботи
- •4.3 Варіанти завдань
- •4.4 Приклад виконання роботи Задача
- •Реалізація деяких методів-аксесорів, предикатних функцій, функцій-утілит, методів, які забезпечують функціональність об’єктів
- •Результати виконання роботи
- •4.5 Контрольні запитання
- •Константні та статичні члени класів. Вбудовані функції. Діаграми класів, послідовності Лабораторна робота № 5
- •5.1 Теоретичні відомості
- •5.2 Програма роботи
- •5.3 Варіанти завдань
- •5.4 Приклад виконання роботи Задача 5_1
- •Приклади деяких константних елементів даних і методів класів
- •Фрагмент результатів виконання роботи
- •Задача 5_2
- •Приклади деяких статичних елементів даних і методів класів
- •Фрагмент результатів виконання роботи
- •5.5 Контрольні запитання
- •Перевантаження операцій та функцій. Дружні функції Діаграми класів, станів і переходів Лабораторна робота 6
- •6.1 Теоретичні відомості
- •6.2 Програма роботи
- •6.3 Варіанти завдань
- •6.4 Приклад виконання роботи
- •6.5 Контрольні запитання
- •Просте успадкування класів. Поліморфізм. Віртуальні функції Діаграма класів, кооперацій. Лабораторна робота 7
- •7.1 Теоретичні відомості
- •7.2 Програма роботи
- •9.2. Приклад програми Умова задачі 9
- •Алгоритм задачі 9
- •Текст програми 9
- •Результати роботи програми 9
- •9.3. Варіанти завдань
- •9.4. Контрольні запитання
- •Методи внутрішнього сортування (сортування масивів) Лабораторна робота 10
- •Методи зовнішнього сортування (сортування файлів) Лабораторна робота 11
3.5 Контрольні запитання
Дати поняття інтерфейсу та реалізації класу.
Чому в інтерфейсі класу не можна ініціалізувати змінні?
Дати поняття інкапсуляції.
Як реалізується інкапсуляція ?
До яких частин класу мають доступ програми-клієнти?
Чим обгрунтована технологія оголошувати дані-елементи класу закритими, а методи – відкритими?
Яке призначення оператора розширення області дії?
Яке призначення конструктора? Які дії виконує конструктор класу?
Які існують види конструкторів?
Чим відрізняється конструктор за замовчуванням, що створенний компілятором від інших видів конструкторів?
У яких випадках застосовуються різні види конструкторів?
Чи можна перевантажити деструктор?
Чи можна перевантажити конструктор?
Як можна отримати значення атрибутів об’єкта?
За яких умов неможливо здійснити доступ до елементів класу, використовуючи об’єкт або покажчик на об’єкт?
Як виконується операція присвоєння об’єктів?
Чи можуть конструктори викликати інші функції-члени класу, глобальні функції?
Як забезпечити включення заголовних файлів не більше одного разу в программу?
Як ініціалізувати вбудовані в клас об’єкти?
Методи класів: аксесори, ітератори, утілити, предикатні функції . Діаграми класів, діяльності, послідовності Лабораторна робота № 4
Мета роботи: ознайомитись з ріхними варіантами методів класу. Доповнити програму прототипами та реалізаціями методів згідно з UML-діаграмами.
4.1 Теоретичні відомості
Дивись лекції. Розділ доступ до елементів даних та функцій-членів класу.
Рис. 4.1. Діаграма станів і переходів
Рис. 4.2. Діаграма видів діяльності
Рис. 4.3. Діаграма паралельних видів діяльності
Рис. 4.4. Діаграма кооперації
Рис. 4.5. Діаграма послідовності
4.2 Програма роботи
Доповнити інтерфейси та реалізації класів методами–аксесорами, що здійснюють доступ до закритих елементів даних класів (записують та отримують значення атрибутів);
Доповнити інтерфейси та реалізації класів методами виведення значень атрибутів класів на екран (методи відображення);
Доповнити інтерфейси та реалізації класів предикатними функціями, що перевіряють істинність або хибність умов (наприклад, IsEmpty() для перевірки порожності списку);
Доповнити інтерфейси та реалізації класів закритими функціями-утілитами, що забезпечують роботу відкритих функцій-членів класу та здійснюють проміжні розрахунки та перетворення значень атрибутів;
Доповнити інтерфейси та реалізації класів методами, що забезпечують функціональність об’єктів під час моделювання їх роботи, наприклад, функції, що реалізують переміщення ліфта, вхід та вихід пасажирів, натискання кнопки поверху та ліфта тощо;
Протестувати програму, під час роботи якої слід виконати такі дії:
вивести повідомлення про створення та знищення об’єктів;
показати значення атрибутів об’єктів, використовуючи відкриті методи–асесори;
показати результати роботи предикатних функцій і функцій-утілит;
визначити стани об’єктів у задані такти моделювання згідно з діаграмою станів і переходів;
реалізувати сценарій тестування згідно з діаграмами діяльності об’єктів;
продемонструвати реалізацію діаграм послідовності.