Реферат з теми:
Метод покрокової деталізації в програмуванні
В
Принцип спадного проектування алгоритмів і програм (метод проектування зверху вниз)
Для створення "хороших" програм необхідно дотримуватися певних правил програмування. У зв'язку з цим становить інтерес розглянути новий підхід до розробки програм, що отримала досить широке поширення в останні роки - структурне програмування. p> Ідеї структурного програмування були висловлені Е. Дейкстрой ще в 1965 р. Пізніше їм були викладено основні положення структурного програмування у роботі "Нотатки з структурному програмуванню ". З тих пір термін "структурний програмування" широко використовується, але в різних сенсах і без суворого визначення. p> Структурне програмування - метод програмування, використання якого знижує ймовірність помилок у процесі складання програм, підвищує їх надійність, ефективність, спрощує розуміння, забезпечує створення програм, структура яких ясна і нерозривно пов'язана зі структурою розв'язуваних завдань. p> Метою структурного програмування є спроба спростити процес написання правильних програм і забезпечити можливість читання програми від початку до кінця, слідуючи логіці. p> Програми, написані з використанням традиційних методів, зазвичай мають хаотичну структуру, тому і читання, і розуміння їх утруднено. Структуровані програми можна читати як звичайний текст зверху вниз без перерви, так як вони мають послідовну організацію, тобто застосування методу структурного програмування покращує ясність і читабельність програм. p> Інакше його ще називають методом покрокової деталізації. p> Спадний проектування програми, коли спочатку програма розглядається, як сукупність дій, кожна з яких потім деталізується і представляється як послідовність більш простих і конкретних дій і т.д. Аж до окремих операторів мови; такий підхід дозволяє реалізувати наявність двох видів підпрограм у мові - процедур і функцій. p> Спочатку продумується загальна структура алгоритму без детального опрацювання окремих його частин. Блоки потребують подальшої деталізації, позначаються пунктирною лінією. Далі опрацьовуються окремі блоки, що не деталізовані на попередньому кроці. p> Таким чином, на кожному кроці розробки уточнюється реалізація фрагмента алгоритму (або програми), тобто вирішується простіше завдання. Повністю закінчивши деталізацію всіх блоків, отримуємо рішення задачі в цілому. p> Якщо на кожному кроці деталізації використовувати принципи структурного програмування, то виходить хороша структурована програма в цілому. p> Процес проектування зверху вниз блок-схеми алгоритму зображений на нижче наведеному прикладі.
Приклад. Обчислити значення функції y = f (x) для x, що змінюється від x 0 до xn з кроком h:
, де
В
x 0 = -5; x n = 10; h = 1; a = -1; b = 3.5. p> Технологія спадного проектування з покрокової деталізацією є невід'ємною частиною створення добре структурованих програм. Розробка алгоритму методом покрокової деталізації полягає в наступному:
Будь алгоритм можна представити у вигляді одного приписи - у вигляді постановки завдання. Але якщо виконавець не навчений виконувати заданий припис, то виникає необхідність подати цей припис у вигляді деякої сукупності простіших приписів. Якщо виконавець не може виконати і деякі з них, то такі приписи знову представляються у вигляді сукупності ще більш простих приписів. Об'єднуючи так отримані приписи в єдину сукупність виконуваних у певному порядку приписів отримують виконання вихідного завдання в цілому.
Переваги методу покрокової деталізації:
1. Зберігається концептуальна цілісність програми: від складного до простого.
2. Проектування програми, кодування, перевірку та документування можна робити паралельно.
3. У кожен момент часу (навіть на початку розробки) мається працюючий варіант програми.
4. Фрази природної мови, будучи закоментувавши, служать хорошим путівником по програмі.
У процесі створення програми особливу увагу потрібно приділяти розробці алгоритмів. Такий підхід допоможе уникнути помилок, допущених при проектуванні програмного продукту. Наявність подібних помилок зажадає масу часу на виправлення, повернення на попередні етапи розробки з метою їх доопрацювання.
При розробці алгоритмів зазвичай використовують метод покрокової деталізації (поетапно):
1. На першому етапі описуються вирішення поставленого перед програмою завдання, виділяються підзадачі.
2. У наступних етапах описується рішення кожної підзадачі, виділяючи при цьому нові підзадачі. Так відбувається до тих пір, поки рішення підзадач НЕ буде очевидним. Рекомендовано рішення кожного завдання описувати за допомогою 1 - 2 конструкцій не більше, щоб більш чітко уявляти структуру програми.
Наприклад: Потрібно розробити програму, яка з певною точністю eps знаходить значення аргу...