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

А ось функціональне програмування - це те, що зрозуміти після класичної шкільної програми уроків інформатики буває складно. Саме тому для загального розвитку та можливого майбутнього досвіду ось найкорисніші ресурси з функціонального програмування.
Отже, як ми вже з'ясували, імперативне програмування працює зі строго певними станами та інструкціями. Функціональне ж ґрунтується на взаємодії з функціями, тобто деякими процесами, що описують зв'язок між вхідними та вихідними параметрами. Таким чином, у той час, як імперативна мова описує конкретну дію з відомими вхідними параметрами, функціональна описує певне тіло взаємодій, не опускаючись до конкретних випадків.
Функціональне програмування, незважаючи на складність, несе в собі ряд переваг:
- Код стає коротшим;
- Зрозуміліше;
- Включає ознаки хороших імперативних мов: модульність, типізація, чистота коду.
Прикладами функціональних мов є LISP (Clojure), Haskell, Scala, R. Загалом ви навіть можете спробувати писати функціональний код на Python або Ruby, але це більше розвага для мізків, ніж раціональнавикористання можливостей мови.
Конкретніше

Куди з цими знаннями йти
Що стосується галузі застосування, то функціональне програмування є незамінним інструментом при створенні штучного інтелекту або в тих галузях, де імперативні мови споживають дуже багато ресурсів (наприклад, Data Science). Так що якщо вирішили направити свою подальшу кар'єру в це русло, то саме час обкласти описаною вище літературою і залишити свій слід у чиїйсь віртуальній голові.
Якщо ви новачок у світі програмування, можливо ще не знаєте, що існують три основні парадигми: логічне програмування, імперативне і функціональне.
У першому випадку основні принципи зрозумілі: ви оперуєте математичною логікою для виведення нових фактів та станів із уже відомих. Яскравим прикладом такої мови є Prolog.
p align="justify"> Принцип роботи з імперативним програмуванням, найбільш поширеним, полягає у формуванні інструкцій, послідовних команд, які повинна виконувати машина. За прикладами далеко не треба ходити, просто відкрийте список найпопулярніших мов програмування: ті, що зверху — імперативні.

А ось функціональне програмування - це те, що зрозуміти після класичної шкільної програми уроків інформатики буває складно. Саме тому для загального розвитку та можливого майбутнього досвіду ось найкорисніші ресурси з функціонального програмування.
Отже, як ми вже з'ясували, імперативне програмування працює зі строго певними станами та інструкціями. Функціональне ж ґрунтується на взаємодії з функціями, тобто деякими процесами, що описують зв'язок між вхідними та вихідними параметрами. Таким чином, у той час якІмперативний мову визначає конкретну дію з відомими вхідними параметрами, функціональний визначає деяке тіло взаємодій, не опускаючись до конкретних випадків.
Функціональне програмування, незважаючи на складність, несе в собі ряд переваг:
- Код стає коротшим;
- Зрозуміліше;
- Включає ознаки хороших імперативних мов: модульність, типізація, чистота коду.
Прикладами функціональних мов є LISP (Clojure), Haskell, Scala, R. Загалом ви навіть можете спробувати писати функціональний код на Python або Ruby, але це більше розвага для мізків, ніж раціональне використання можливостей мови.
Конкретніше

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