Парадигми програмування

Слово «парадигма» стосовно до програмування означає певний загальноприйнятий підхід до організації обчислень на комп’ютері. Парадигма визначає систему базових понять, на основі якої відбувається програмування.

Мови програмування, про які розповідалося вище, засновані на процедурній парадигмі програмування. Алгоритм, реалізований на процедурному мовою, грунтується на уявленнях про фон-неймановской архітектурі комп’ютера. Базовим поняттям є поняття величини, що зберігається в пам’яті комп’ютера, базової операцією – операція присвоювання. Рішення завдання на комп’ютері відбувається шляхом зміни стану пам’яті: на початку в пам’ять поміщаються вихідні дані, в кінці виходять результати. Програма – це опис процедури переходу пам’яті з початкового стану в кінцеве в процесі виконання послідовності команд. Мислення програміста, що працює в рамках процедурної парадигми, направлено на зведеними рішення задачі до послідовності команд, які вміє виконувати процесор комп’ютера.

На іншому підході до програмування заснована функціональна парадигма програмування. Найбільш відомою мовою, які реалізують функціональну парадигму, є ЛИСП.

У теорії програмування існує гадане твердження (яке не має строгого доказу) про те, що будь-який алгоритм може бути описаний за допомогою деякого набору частково-рекурсивних функцій. Відомо, що досить широкий клас завдань, що вирішуються засобами процедурного програмування, піддається вирішенню і у функціональній парадигмі. Мова ЛИСП дозволяє моделювати на комп’ютері досить складні процеси, зокрема, інтелектуальну діяльність людей. Крім ЛИСП, існують і інші мови функціонального програмування: Haskell, Scheme і ін.

Логічна парадигма програмування реалізована в мові Пролог. Пролог був розроблений у Франції в 1972 році. Його, як і ЛИСП, відносять до мов штучного інтелекту. Пролог заснований на апараті математичної логіки, звідси назва парадигми. На Пролозі будується база знань у певній предметній області, що складається із сукупності фактів і правил. Для вирішення деякої задачі формулюється запит до бази знань, який називається метою. Реалізація мети (відповідь на запит) відбувається через закладений в інтерпретатор Прологу алгоритм, який називається механізмом виведення. Використовуючи Пролог, можна вирішувати логічні завдання, аналогічні тим, які були розглянуті в § 1.6.4 підручника для 10 класу. Слід зазначити, що за допомогою Прологу можна вирішувати лише обмежене коло завдань штучного інтелекту. До мов логічного програмування також відносяться Planner, Mercury, Fr il та ін.

Об’єктно-орієнтована парадигма програмування заснована на концепції об’єктів і класів. Всякий об’єкт характеризується набором властивостей і дій, які з ним можуть бути виконані і які він може виконувати. Об’єкт відноситься до певного класу. Об’єктно-орієнтоване програмування (ООП) зводиться до вибудовування ієрархій класів, описів об’єктів та їх взаємодій, програмної реалізації різних дій над об’єктами. Першою мовою ООП був Симула, розроблений в 1967 році. Пізніше елементи ООП стали впроваджуватися в процедурні мови, у тому числі в Турбо Паскаль. Найбільш популярними засобами об’єктно-орієнтованого програмування є мови Сі ++, Java.

Посилання на основну публікацію