Що треба знати про парадигми програмування

програмування

Знайомство з новими парадигмами програмування може перевернути вашу точку зору на написання коду. Розповідаємо, що це таке.

Парадигма програмування - це набір ідей і понять, які визначають стиль написання програм, підхід до програмування. Існує безліч різних парадигм, але найчастіше використовуються імперативна і декларативна, практично протилежні одна одній.

Докладніше про всі тіпи програмування можна дізнатись на курсах програмування та веб-дизайну у Львові. ITEA - це авторизовані та авторські курси за різніми напрямками. Зробити заявку на навчання ви зможите на сайті https://lviv.itea.ua/.

Імперативна парадигма програмування

У імперативній (англ. Imperative - наказ) парадигмі розробник пише для комп'ютера інструкції, яким той слідує. Інструкції можуть бути наступні:

  • склади два числа;
  • якщо а, то зроби б, а інакше зроби в;
  • відправ запит на сервер;
  • відкрий файл;
  • виведи рядок.

Тобто програміст каже, що потрібно зробити і в якому порядку, а комп'ютер виконує накази.

Відмітна риса імперативної парадигми - поняття стану комп'ютера або програми. Стан - це сукупність всіх даних в певний момент часу: змінних, масивів, лічильників і так далі.

До імперативної парадигми відносяться такі види програмування:

  • процедурне;
  • структурне;
  • аспектно-орієнтоване;
  • об'єктно-орієнтоване та інші.

Навіщо це потрібно

У вас моглог з'явитися цілком логічне запитання:

Навіщо використовувати імперативне програмування, якщо декларативне дозволяє писати набагато менше коду?

Є кілька причин.

По-перше, декларативне програмування - це обгортка для імперативного. Комп'ютер не може ось так просто зрозуміти, чого хоче програміст, тому для нього потрібно написати конкретні інструкції, що і в якому порядку робити.

Коли ви пишете запит в SQL, його виконання відбувається по заздалегідь описаним інструкцій. Тому нам потрібно імперативне програмування, щоб змусити працювати декларативне.

По-друге, декларативне програмування не підходить для задач, для вирішення яких важливо мати доступ до стану програми - наприклад, якщо потрібно перевірити, чи натиснута кнопка або поставлена галочка в чекбокс.

У декларативному програмуванні можна відстежити ні сам стан, ні його зміна, тому не вийде вказати, що має відбуватися у відповідь на дії користувача.

По-третє, імперативне програмування дає більше свободи, тому його частіше використовують в творчих областях, особливо там, де важливий порядок виконуваних дій.


Читайте также