- Походження
- характеристики
- Теорія структурованого програмування
- Структури управління
- Послідовність або лінійна структура
- Структура рішення або альтернативи
- Цикл або повторювана структура з початковим запитанням
- Незалежно від мови програмування
- Приклади структурованого програмування
- Послідовність
- Повторення
- Вибір
- Структуроване програмування в Visual Basic
- Послідовність
- Повторення
- Вибір
- Перевага
- Чіткіші програми
- Легке розуміння
- Недоліки
- Той самий код повторюється
- Змінювати типи даних досить громіздко
- Програми
- Обробка об'єктів
- Список літератури
Структурного програмування є забезпечення в проектуванні і будівництві програмного забезпечення, для того , щоб краще управляти складністю, беручи до уваги особливості людського мислення. Кожна програма заснована на алгоритмі і може бути представлена логічною схемою.
Вона виникла через все більшу складність комп'ютеризованих програм. Це стало новою схемою програмування, яка створила нові методи, щоб можна було виробляти програми, безпечні для експлуатації довше.
Структура рішення та структура послідовностей в структурованому програмуванні. Джерело: I.hidekazu CC BY-SA (httpscreativecommons.orglicensesby-sa4.0)
Завдяки швидкому розвитку комп’ютеризованої обробки даних, наприкінці 1960-х років вдалося вирішити все більш складні проблеми. Однак розуміння, налагодження та модифікація цих програм створили труднощі, які зробили їх ненадійними.
Великі комп'ютерні програми, створені для цих проблем, мали вихідні коди настільки довгі та неструктуровані, що їм стало досить складно отримати доступ та керуватися певною логікою навіть для власних авторів.
Походження
Програмісти використовували команду "goto" в мовах програмування для виконання умовного розгалуження, що часто призводило до читабельності, і логічний контекст не зберігався.
У цій кризі програмного забезпечення постало питання, чи можна систематично розробляти загальну та дисципліновану методологію, яка б передбачала вдосконалення програм. Як відповідь на такий підхід зародився метод структурованого програмування.
У 1968 році Дайкстра опублікував статтю "Гото, команда вважає шкідливою", де він зазначив, що безрозбірливе використання цієї команди негативно впливає на читабельність та розуміння комп'ютерних програм.
Niklaus Wirth розробив нову мову програмування під назвою Pascal, випущений в 1970 році. З тих пір вона широко використовується для навчання дизайну структурованого програмування.
характеристики
Цей режим програмування характеризується тим, що програмісти можуть фрагментувати вихідний код своїх програм на логічно структуровані блоки, які складаються з циклів, логічних блоків та умовних команд.
Мета структурованого програмування - зробити програми, які легко писати, налагоджувати та змінювати. Отримані програми чіткі, впорядковані, зрозумілі, без стрибків.
Теорія структурованого програмування
Дійкстра розробив теорію, пов'язану зі структурованим програмуванням, яка вказувала, що при розробці будь-якої програми зручно враховувати наступні основи:
- Структурна теорема, в якій сказано, що будь-яку програму можна скласти, використовуючи лише три основні структури управління: послідовну структуру, альтернативну структуру та повторювану структуру.
- Викладаючи програми, рекомендується застосовувати низхідну техніку, яку також називають зверху вниз.
- Діапазони дійсності та видимості змінних та структур даних повинні бути обмеженими.
Структури управління
Структурна теорема вказує, що будь-який алгоритм з єдиною початковою і кінцевою точкою може бути складений як композиція з трьох структур управління.
Логічно і чітко програмуючи ці підтримувані структури управління, структуроване програмування дозволяє ефективно підходити до функцій з будь-яким ступенем складності.
Послідовність або лінійна структура
Ця структура - це просто послідовність або послідовність двох або більше операцій або команд.
Структура рішення або альтернативи
Це вибір команди між двома можливими альтернативами. Також дозволяється вибирати між більш ніж двома альтернативами.
Цикл або повторювана структура з початковим запитанням
Певні команди повторюються до тих пір, поки буде виконана певна умова. Цикл також можна виконати за допомогою лічильника.
Незалежно від мови програмування
Структуроване програмування базується на чітко визначених функціональних модулях, класифікованих відповідно до специфіки проблеми. Це програмування є незалежним методом мови програмування, діє як стиль програмування.
Це спосіб розробити програми, дотримуючись чітко встановлених правил, використовуючи для цього певний набір структур управління.
Структуроване програмування дозволяє програмам записуватись у псевдокоді, незалежно від машинної мови, близької до натуральної, перетворюваної на будь-яку мову програмування.
Приклади структурованого програмування
Практично будь-який фрагмент зразкового коду в будь-якій сучасній мові програмування буде прикладом структурованого програмування.
Це програмування використовує петлі, умовні умови та підпрограми для контролю потоку та модульності для полегшення читання та повторного використання коду.
Послідовність
Перелік висловлювань може виконуватися в порядку, зверху вниз. У цьому випадку на прикладі наводиться програма з природного мовлення для випікання хліба:
- Додати борошно.
- Додайте дріжджі.
- Додати сіль.
- Змішайте.
- Додайте води.
- Заміси.
- Нехай тісто піднімається.
- Спекти.
Повторення
Блок тверджень повторюється до тих пір, поки умова справдиться. Наприклад: миття посуду.
Вибір
Максимум одна дія вибирається з кількох альтернативних умов. Наприклад: замовити пошту.
Структуроване програмування в Visual Basic
Послідовність
Рядки або блоки коду записуються і виконуються в послідовному порядку. Наприклад, у вас є:
х = 6
у = 12
z = x + y
WriteLine (z)
Повторення
Блок коду повторюється, коли виконується умова. Немає обмеження в кількості виконання блоку. Приклад:
х = 2
Поки х <100
WriteLine (x)
x = x * x
Кінець
Вибір
Блок коду виконується, якщо умова істинна. Блок коду запускається не більше одного разу. Приклад:
x = ReadLine ()
Якщо x Mod 2 = 0
WriteLine ("число парне")
Кінець так
Перевага
- Це програми, що відповідають потребам замовників.
- Хоча спочатку для генерування коду потрібно більше часу, він часто призводить до коду, який працює без помилок під час першого запуску.
- Це схоже на лексику слів та символів англійською мовою.
- В майбутньому легко впоратися зі змінами програми з новими специфікаціями.
- Їх простіше в обслуговуванні.
- Це легко у використанні та розумінні. Згодом потрібно менше часу для написання коду. Це легше вчитися.
- Програма, написана мовою високого рівня, може бути перекладена на багато машинних мов. Тому його можна запустити на будь-якому комп’ютері, для якого є відповідний перекладач або компілятор.
- Вони передусім орієнтовані на проблеми, а не на машинні.
- Це не залежно від комп'ютера, на якому він використовується. Іншими словами, програми, розроблені мовами високого рівня, можна запускати на будь-якому комп’ютері.
Чіткіші програми
Структуроване програмування зменшує можливість того, що одна функція вплине на іншу. Це робить програми зрозумілішими, оскільки глобальні змінні видаляються та замінюються локальними змінними.
Завдяки цій зміні може бути збережений простір розподілу пам'яті, який займає глобальна змінна.
Легке розуміння
Організація допомагає легко зрозуміти логіку програмування, щоб зрозуміти логіку програм.
Це також допомагає новачкам будь-якої технічної компанії зрозуміти програми, створені іншими працівниками галузі, тим самим полегшуючи потенційну налагодження коду.
Недоліки
- Перекладачеві чи компілятору необхідно перекласти мову високого рівня на машинну мову. Тому за використання комп’ютерного часу потрібно платити ціну.
- Код об'єкта, сформований компілятором, може бути неефективним у порівнянні з еквівалентною програмою мови збірки.
Той самий код повторюється
Код, який записується, може з’являтися в різних частинах програми. Він може бути вразливим до різних проблем через своє розташування. Програми мають змінні, а це означає, що вони можуть приймати різні значення в різних частинах програми.
Змінювати типи даних досить громіздко
Тип даних походить від багатьох функцій. Тому, коли в цьому типі даних відбуваються зміни, відповідні зміни повинні бути внесені у кожне місце, яке діє на цей тип даних у межах програми. Це дійсно трудомістке завдання, якщо програма дуже велика.
Можна розглядати випадок розробки програмного забезпечення, де кілька програмістів працюють як команда в додатку. У структурованій програмі кожному програмісту буде призначено побудувати певний набір функцій та типів даних.
Тому різні програмісти будуть окремо обробляти різні функції, які мають типи даних, які спільно використовуються один з одним.
Інші програмісти в команді повинні відображати зміни типів даних, внесені програмістом, у типи даних, якими вони обробляються. Інакше доведеться переписати кілька функцій.
Програми
Структуроване програмування добре працює для мільйонів програм та мільярдів рядків коду. Немає підстав відмовлятися від цього.
Зокрема, він надзвичайно добре працював для програм, що обробляють дані, та для обробки чисел, обидві вони запускаються один раз для отримання відповіді.
Дві характеристики, як правило, добре визначають проблеми, до яких можна підходити чисто структурованим чином:
- Дані, що обробляються, тісно відповідають типам даних, інтегрованих у мову, як правило, це числа та рядки символів.
- Програма дотримується чітко визначеного потоку управління для отримання єдиного результату на основі деякого введення.
Комп'ютерні програми з цими характеристиками включають багато наукових, інженерних та текстових програм, а також багато прикладів з підручника традиційних курсів інформатики.
Не дивно, що саме такі програми хотіли вирішити перші люди, які винайшли мови програмування.
Обробка об'єктів
Більшість сучасних мов програмування структуровані так: те, що у вас є в програмі, є об'єктами, а більшість кодів складається з різних методів використання даних, що зберігаються в цих об'єктах.
Структурована програма, як правило, контролює те, що відбувається і коли це відбувається, тоді як програма, що базується на подіях, повинна бути здатна реагувати на події у непередбачувані часи.
Список літератури
- MVPS (2020). Структурне програмування. Взято з: mvps.net.
- Олексій (2019). Парадигма структурованого програмування. Середній. Взято з: medium.com.
- Включити довідку (2020). Структуроване програмування, його переваги та недоліки. Взято з: includehelp.com.
- Тім Тротт (2019). Мови програмованого програмування. Lonewolf Інтернет. Взято з: lonewolfonline.net.
- Портал ОО (2020). Використання та переваги традиційного, структурованого програмування. Взято з: ooportal.com.
- Студент Снел (2020). Заключний огляд - Резюме Структуровані програми програмування Взято з: studeersnel.nl.