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

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

Парадигма програмування — спосіб концептуалізації, що визначає організацію обчислень і структурування роботи, яку виконує комп'ютер[1].

Парадигма програмування унаочнює те, як програміст розглядає роботу програми; наприклад, за ООП — як множини об'єктів, тоді як за ФП — як послідовності обчислень функцій без станів.

Кожну окрему парадигму програмування характеризує наявність у ній методу та зв'язок із моделлю життєвого циклу. Спільним для різних парадигм програмування є загальні принципи проектування програмного продукту. Користувач може вибирати ту або іншу парадигму програмування з позицій зручності застосування для задач у ПрО та виготовлення конкретного програмного продукту[2].

Історія терміна

Своїм сучасним значенням у науково-технічній галузі термін «парадигма» зобов'язаний, вочевидь, Томасу Куну та його книзі «Структура наукових революцій». Кун називав парадигмами усталені системи наукових поглядів, у межах яких ведуться дослідження, відтак, у процесі розвитку наукової дисципліни може відбуватися заміна однієї парадигми на іншу[3], при цьому стара парадигма ще продовжує якийсь час існувати, ба навіть розвиватися завдяки тому, що багато її прихильників виявляються з тих чи інших причин нездатними перебудуватися до праці в іншій парадигмі.

Власне термін «Парадигма програмування» вперше застосував Роберт Флойд у своїй лекції[4] лауреата премії Тюрінга, відзначаючи, що в програмуванні можна спостерігати явище, подібне парадигмам Куна, але, на відміну від таких, парадигми програмування не є взаємовиключними:

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

Таким чином, на думку Роберта Флойда, на відміну від парадигм у науковому світі, описаних Куном, парадигми програмування можуть поєднуватися, збагачуючи інструментарій програміста.

Основні парадигми програмування

Мультипарадигмова мова програмування

Мультипарадигмова мова програмування — це мова програмування, яка підтримує кілька парадигм. Наприклад на Python можна писати як імперативні та об'єктно-орієнтовані, так і програми в функціональному стилі.

Примітки

  1. Основы информатики и программирования: Учебное пособие Архівовано 11 квітня 2011 у Wayback Machine.// Е. А. Роганов — М.: МГИУ, 2001. — Вузол VI.(рос.)
  2. Лавріщева К. М. Програмна інженерія Архівовано 4 березня 2016 у Wayback Machine. — К.: Академперіодика, 2008.- 319 с.
  3. Наприклад, геоцентрична небесна механіка Птолемея змінилася геліоцентричної системою Коперника.
  4. R.W. Floyd. The Paradigms of Programming Communications of the ACM, 22(8):455—460, 1979. Російською див.: Лекции лауреатов премии Тьюринга за первые двадцать лет (1966—1985) — М.: МИР, 1993.

Див. також


This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.