Структурне програмування
Структурне програмування являє собою найбільш велике досягнення у цій галузі на даний момент. При тому, що майже всі мають загальне поняття про нього, майже ніхто не може дати конкретної і чіткого визначення даного терміну. Структурне програмування ставить основною метою писати програми найменшою складності, змушуючи програміста ясно мислити, полегшуючи сприйняття програми. Текст її необхідно робити таким, щоб він був читаємо зверху-вниз. Ця умова порушується, якщо в програмному коді зустрічаються оператори go to, оскільки вони порушують структуру всього відрізка програми. При тому, що цей показник не можна вважати найзручнішим, все ж можна сказати, що наявність в програмному коді даного оператора є самим впадає в очі типом порушення структури. Тіла модулів і приємним базові конструкції повинні володіти стійкістю до апаратних збоїв, помилок у програмах і спотворень вихідних даних.
Основні принципи структурного програмування полягають у наступному. Будь-яка програма може бути легко синтезована на базі елементарних конструкцій трьох основних типів:
— простий послідовності-
— умов або альтернатив-
— повторень, тобто циклів і ітерацій.
Використовуватися може один або два будь виду одночасно. Кожній структурі притаманна єдина риса - єдина точка передачі управління в структуру і єдина точка входу в структуру. Такий вид конструкції має дисциплінуючий і систематизирующее значення.
Простота первинних конструкцій в структурному програмуванні запобігає виникненню інформаційних зв'язків, а також заплутаних передач управління. Складність програм помітно знижується при підвищенні структурованості модулів, зростає їх наочність, а це сприяє скороченню кількості помилок. Однак у структурування є і недолік - за красу і наочність програмного коду доводиться розплачуватися додатковою пам'яттю, а також часом, необхідним на їх реалізацію на ЕОМ.
Структурне програмування, тобто структурність самих програмних текстів, цілком залежить від того, який для цього використовується мова. Звичайно, виникає питання, а який же з них підходить найкраще. Сучасні засоби програмної розробки вважаються найкращими мовами, що реалізують структурний підхід до програмування. Серед найбільш поширених можна виділити Basic, Паскаль і FoxBASE. Приміром, на мові Асемблер практично неможливо реалізувати принципи, закладені в концепцію структурного програмування. Ця мова орієнтований на написання програмного коду на низькому рівні.
Структурне програмування в своїй основі орієнтоване на спілкування з людьми, а не з машинами, тому сприяє написанню програм, які являють собою ясне і просте рішення поставленого завдання. Програміст повинен мислити в термінах базових структурних конструкцій.
Якщо говорити про позиції щодо раніше згаданого оператора go to, то його варто уникати використовувати скрізь, де тільки можливо, проте це ніяк не повинно відбиватися на ясності програми. Іноді використання даного оператора виявляється просто необхідним для виходу з якогось відрізка програми або циклу, а також для того, щоб уникнути появи занадто поглиблених розвилок, тим більше, що перехід пов'язаний з більш нижніми рівнями програм. При цьому структура програми так і залишається легко читається зверху вниз. Найгірший варіант використання даного оператора пов'язаний з переходом знизу вгору.
Для полегшення читання програми часто додають порожні рядки між розділами. Варто писати текст програми зі зрушеннями, щоб можна було прочитати послідовність дій і кількість вкладень.