- •Загальний план специфікації вимог до пз
- •Загальний огляд процесу відлагодження
- •Типові помилки при відлагодженні програм
- •Рекомендації щодо знаходження помилки
- •Рекомендації щодо виправлення помилок
- •«Агресивне» відлагодження
- •Відлагодження помилок при компіляції програм
- •1. Елементарні структури даних
- •1.1. Масив
- •1.2 Лінійний список.
- •2. Більш складні структури даних
- •2.1 Граф
- •2.2 Дерево
- •1.3 Купа
- •Визначення ооп
- •Фундаментальні поняття
- •Переваги ооп
- •Недоліки ооп
- •Типи відносин між класами
- •Агрегація
- •Асоціація
- •Успадкування
- •Метакласи
- •Шаблон «Абстрактна фабрика» (Abstract Factory)
- •Шаблон «Будівельник» (Builder)
- •Шаблон «Фабричний метод» (Factory Method)
- •Шаблон «Прототип» (Prototype)
- •Шаблон «Одинак» (Singleton)
- •1. Технологія com(Component Object Model)
- •2. Технологія rscom від «r-Style Softlab»
- •3. Технологія corba
- •4. Технологія JavaBeen.
- •5. Технологія ejb
- •1.1 Умовні оператори
- •1.1.1 Однорядкова конструкція оператора If / Then / Else:
- •1.1.3 Розгалуження обчислень за кількома умовами If /Then /ElseIf /EndIf:
- •1.1.4. Оператор Select Case:
- •1.2 Елементи екранних форм для організації розгалужень
- •1.3 Оператори циклу
- •1.3.1 Оператор циклу з лічильником For…Next
- •1.3.2. Оператор циклу For Each...Next
- •1.3.3. Оператор циклу з передумовою While...Wend
- •1.3.4 Оператор циклу Do...Loop
- •1.4 Оператори безумовної передачі керування
- •1.4.1 Оператор безумовного переходу Goto:
- •1.4.2 Оператор виходу зі структурного блоку Exit :
- •Статичні масиви
- •Динамічні масиви
- •Присвоювання масивів
Переваги ооп
Від будь-якої методики розробки програмного забезпечення ми чекаємо, що вона допоможе нам у вирішенні наших завдань. Але однією з найбільш значних проблем проектування є складність. Чим більша і складніша програмна система, тим важливіше розбити її на невеликі, чітко окреслені частини. Щоб впоратися зі складністю, необхідно абстрагуватися від деталей. У цьому сенсі класи являють собою дуже зручний інструмент.
Класи дозволяють проводити конструювання з корисних компонентів, що володіють простими інструментами, що дозволяє абстрагуватися від деталей реалізації.
Дані та операції над ними утворюють певну сутність, і вони не розносяться по всій програмі, як нерідко буває у випадку процедурного програмування, а описуються разом. Локалізація коду і даних покращує наочність і зручність супроводу програмного забезпечення.
Інкапсуляція дозволяє привнести властивість модульності, що полегшує розпаралелювання виконання завдання між кількома виконавцями і оновлення версій окремих компонентів.
ООП дає можливість створювати системи, що розгортаються. Це одна з основних переваг ООП, і саме вона відрізняє даний підхід від традиційних методів програмування. Розширюваність означає, що існуючу систему можна змусити працювати з новими компонентами, причому без внесення до неї будь-яких змін. Компоненти можуть бути додані на етапі виконання програми.
Поліморфізм виявляється корисним переважно в наступних ситуаціях.
-
Обробка різнорідних структур даних. Програми можуть працювати, не розрізняючи виду об'єктів, що істотно спрощує код. Нові види можуть бути додані в будь-який момент.
-
Зміна поведінки під час виконання. На етапі виконання один об'єкт може бути замінений іншим, що дозволяє легко, без зміни коду, адаптувати алгоритм у залежності від того, який використовується об'єкт.
-
Реалізація роботи із спадкоємцями. Алгоритми можна узагальнити настільки, що вони вже зможуть працювати більш ніж з одним видом об'єктів.
-
Створення "каркасу" (framework). Незалежні від програми частини предметної області можуть бути реалізовані у вигляді набору універсальних класів, або каркаса (framework), і надалі розширені за рахунок додавання частин, специфічних для конкретного застосування.
Часто багаторазового використання програмного забезпечення не вдається домогтися через те, що існуючі компоненти вже не відповідають новим вимогам. ООП допомагає цього досягти без порушення роботи вже наявних компонентів, що дозволяє витягти максимум з багаторазового використання компонентів.
-
Скорочується час на розробку, який може бути віддано іншим завданням.
-
Компоненти багаторазового використання звичайно містять набагато менше помилок, ніж знову розроблені, адже вони вже не раз піддавалися перевірці.
-
Коли якийсь компонент використовується відразу декількома клієнтами, поліпшення, що вносяться до його код, одночасно надають позитивний вплив і на безліч працюючих з ним програм.
-
Якщо програма спирається на стандартні компоненти, її структура і призначений для користувача інтерфейс стають більш уніфікованими, що полегшує її розуміння і спрощує використання.
