_CORE
AI & Agentic Systems Core Information Systems Cloud & Platform Engineering Data Platform & Integration Security & Compliance QA, Testing & Observability IoT, Automation & Robotics Mobile & Digital Banking & Finance Insurance Public Administration Defense & Security Healthcare Energy & Utilities Telco & Media Manufacturing Logistics & E-commerce Retail & Loyalty
References Technologies Blog Know-how Tools
About Collaboration Careers
CS EN
Let's talk

Functional Programming principy

17. 11. 2020 1 min read intermediate

Functional programming není jen akademický koncept. Pure functions, immutability a composition vedou k čistějšímu kódu.

Klíčové principy

  • Pure functions: Stejný vstup → stejný výstup, žádné side effects
  • Immutability: Data se nemění, vytváří se nová
  • First-class functions: Funkce jako hodnoty
  • Composition: Skládání malých funkcí

Practical Examples

Python — map, filter, reduce

from functools import reduce numbers = [1, 2, 3, 4, 5] doubled = list(map(lambda x: x * 2, numbers)) evens = list(filter(lambda x: x % 2 == 0, numbers)) total = reduce(lambda a, b: a + b, numbers)

List comprehension (pythonic)

doubled = [x * 2 for x in numbers] evens = [x for x in numbers if x % 2 == 0]

Composition

from functools import reduce def compose(*fns): return reduce(lambda f, g: lambda x: f(g(x)), fns) process = compose(format_output, validate, parse_input) result = process(raw_data)

JavaScript FP

const users = [{ name: ‘Jan’, age: 30 }, { name: ‘Eva’, age: 25 }]; const names = users.map(u => u.name); const adults = users.filter(u => u.age >= 18); const totalAge = users.reduce((sum, u) => sum + u.age, 0); // Immutability const updated = { …user, age: 31 }; // Spread, ne mutace const newList = […items, newItem];

Key Takeaway

Pure functions pro testovatelnost, immutability pro prediktabilitu, map/filter/reduce místo for loops.

functional programmingfppythonjavascript
Share:

CORE SYSTEMS tým

Stavíme core systémy a AI agenty, které drží provoz. 15 let zkušeností s enterprise IT.