FP è basato sul calcolo lamdba. Devi saperlo. È un buon punto di partenza. Le funzioni sono tutto Non esiste un concetto di stato (anche se puoi simularlo a un livello più alto).
In OOP,
a=1 a=a+1
è accettato. Non così in FP. Non puoi semplicemente assegnare alla variabile un altro valore.
Se vuoi imparare FP a lungo termine, impara Haskell. È la versione più pura di FP là fuori ed è anche piuttosto complicata (ho appena iniziato a impararlo), ma vale comunque la pena di impararlo.
Un'introduzione alla programmazione funzionale offre una panoramica di alto livello su cosa sia FP.
Due avvertimenti però
- Se vuoi imparare FP per i lavori, allora non ci sono troppe offerte di lavoro. Procedural e OOP regolano ancora il mercato del lavoro. Ma FP può aiutarti molto nell'esplorare nuovi modi di risolvere un problema.
- I compilatori FP non sono incredibilmente veloci. Poiché FP è più interessato a risolvere il problema, non puoi aspettarti la velocità C. Ma ancora puoi impartire istruzioni al compilatore (in Haskell) per accelerare il processo di esecuzione. Il compromesso è che hai molto tempo a concentrarti sul programma in mano piuttosto che sui bachi antincendio.