2731
Vývoj / Re:Dědičnost dnes
« kdy: 24. 01. 2017, 19:55:37 »O FP se tu bavit nechci, neznám jej dost, ale znám OOP a z toho, co tuším o FP (které mi stejně jako OOP většina lidí nedokáže vysvětlit), tak jsou v přímém protikladu - OOP považuje chování a stavy za neoddělitelné a zapouzdřuje je, schopnost modelovat změnu stavů je přímo jeho cílem při zachování identity, FP na samostatná, otevřená data používá samostatné (rádoby) univerzální funkce (či jejich zřetězení), stavy nemodeluje a identitu zahazováním mezivýsledků popírá. Takže v podstatě Čumilovo tvrzení, že OOP a FP spolu nemají nic společného, je pravdivé.Obecná tvrzení nejsou vetšinou pravdivá
Zbytek příspěvku, co je a není FP, považuju za deklarativní konstrukce či dojmy bez důkazů či příkladů.

Záleží na tom, jak by se FP a OOP vlastně měly kobinovat a především taky na definici, co je FP a co je OOP. Chceš-li konkrétní příklad, nastuduj si, jak (na nejvyšší úrovni) funguje Erlang: aplikace se skládá z procesů, procesy mezi sebou komunikují výhradně zasíláním asynchronních zpráv (až na drobné výjimky jako třeba sdílená databáze, ale to se používá málo), nemůžou mít žádný sdílený stav a vnitřní fungování procesů je naprogramováno funkcionálně (spíš pragmatická než čistá implementace FP - jsou např. možné vedlejší efekty). => procesy jsou aktory => procesy se velmi podobají objektům ve Smalltalku => je tam "OOP" (nikdo se tím moc nechlubí, aby se toho nechytali Javisti apod., ale je to tak) i FP.