Функціональне програмування, GeekBrains - освітній портал

У першому випадку основні принципи зрозумілі: ви оперуєте математичною логікою для виведення нових фактів та станів із уже відомих. Яскравим прикладом такої мови є Prolog.

p align="justify"> Принцип роботи з імперативним програмуванням, найбільш поширеним, полягає у формуванні інструкцій, послідовних команд, які повинна виконувати машина. За прикладами далеко не треба ходити, просто відкрийте список найпопулярніших мов програмування: ті, що зверху — імперативні.

портал

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

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

Функціональне програмування, незважаючи на складність, несе в собі ряд переваг:

  1. Код стає коротшим;
  2. Зрозуміліше;
  3. Включає ознаки хороших імперативних мов: модульність, типізація, чистота коду.

Прикладами функціональних мов є LISP (Clojure), Haskell, Scala, R. Загалом ви навіть можете спробувати писати функціональний код на Python або Ruby, але це більше розвага для мізків, ніж раціональнавикористання можливостей мови.

Конкретніше

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

Куди з цими знаннями йти

Що стосується галузі застосування, то функціональне програмування є незамінним інструментом при створенні штучного інтелекту або в тих галузях, де імперативні мови споживають дуже багато ресурсів (наприклад, Data Science). Так що якщо вирішили направити свою подальшу кар'єру в це русло, то саме час обкласти описаною вище літературою і залишити свій слід у чиїйсь віртуальній голові.

Якщо ви новачок у світі програмування, можливо ще не знаєте, що існують три основні парадигми: логічне програмування, імперативне і функціональне.

У першому випадку основні принципи зрозумілі: ви оперуєте математичною логікою для виведення нових фактів та станів із уже відомих. Яскравим прикладом такої мови є Prolog.

p align="justify"> Принцип роботи з імперативним програмуванням, найбільш поширеним, полягає у формуванні інструкцій, послідовних команд, які повинна виконувати машина. За прикладами далеко не треба ходити, просто відкрийте список найпопулярніших мов програмування: ті, що зверху — імперативні.

geekbrains

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

Отже, як ми вже з'ясували, імперативне програмування працює зі строго певними станами та інструкціями. Функціональне ж ґрунтується на взаємодії з функціями, тобто деякими процесами, що описують зв'язок між вхідними та вихідними параметрами. Таким чином, у той час якІмперативний мову визначає конкретну дію з відомими вхідними параметрами, функціональний визначає деяке тіло взаємодій, не опускаючись до конкретних випадків.

Функціональне програмування, незважаючи на складність, несе в собі ряд переваг:

  1. Код стає коротшим;
  2. Зрозуміліше;
  3. Включає ознаки хороших імперативних мов: модульність, типізація, чистота коду.

Прикладами функціональних мов є LISP (Clojure), Haskell, Scala, R. Загалом ви навіть можете спробувати писати функціональний код на Python або Ruby, але це більше розвага для мізків, ніж раціональне використання можливостей мови.

Конкретніше

geekbrains

Куди з цими знаннями йти

Що стосується галузі застосування, то функціональне програмування є незамінним інструментом при створенні штучного інтелекту або в тих галузях, де імперативні мови споживають дуже багато ресурсів (наприклад, Data Science). Так що якщо вирішили направити свою подальшу кар'єру в це русло, то саме час обкласти описаною вище літературою і залишити свій слід у чиїйсь віртуальній голові.