Perché la programmazione funzionale

38

Qual è l'accordo con la programmazione funzionale? Vedo che ne parlo molto, ma ad essere onesti non li ho mai trovati affatto utili. Perché così tante università le insegnano apparentemente?

    
posta Glenn Nelson 25.02.2011 - 03:48
fonte

6 risposte

60

Inizia con Perché la programmazione funzionale è importante . Quindi passare a Perché perché gli argomenti di programmazione delle funzioni sono importanti . Alcuni punti elenco:

  • La programmazione funzionale consente di ragionare sui problemi in modo diverso
  • L'astrazione funzionale è molto potente e ti consente di ASCIUGARE il tuo codice in modi non disponibili per altri paradigmi
  • Nel nostro futuro multi-core, i linguaggi funzionali potrebbero essere più semplici da suddividere in attività simultanee (anche se i linguaggi non strettamente funzionali stanno lavorando sodo anche sul problema).
  • È più facile dimostrare che i programmi scritti in linguaggi funzionali puri (senza effetti collaterali) sono matematicamente corretti.
risposta data 25.02.2011 - 04:03
fonte
9

I concetti di programmazione funzionale costruiscono una base che cambierà il tuo modo di pensare e ti aiuterà a risolvere i problemi del mondo reale.

Il concetto è simile al perché tutti noi impariamo il calcolo a più variabili, l'algebra e / o la fisica ingegneristica come maggiori esperti di informatica, anche se potremmo non aver mai bisogno di quella specifica conoscenza nelle nostre carriere.

Questo è il motivo per cui le scuole di legge amano i candidati con un B.S in matematica. Studiare Matematica ti insegna a pensare a più concetti in modo logico, e la programmazione funzionale ti insegna astrazioni e molti altri concetti importanti che ti aiutano a scomporre i problemi ea guardarli sotto una luce diversa.

In breve, la programmazione funzionale ti insegna come imparare.

    
risposta data 25.02.2011 - 03:54
fonte
4

Quando inizi, la programmazione funzionale è il miglior modello di pensiero. Perché la maggior parte dei tuoi programmi non richiede l'orientamento all'oggetto. Almeno questa è stata la mia esperienza.

Tuttavia, ora che mi trovo in alcune app che richiedono la separazione di visualizzazione e logica, è stato allora che ho iniziato a separare tutto il codice di logica e di visualizzazione, per rendere più semplice per ciascuno fare ciò che è meglio.

Ma non saprai perché farlo, a meno che tu non abbia padroneggiato prima Functional. Non mi è mai piaciuta la gente che mi spingeva OO, o che OO è la soluzione per tutto. Assicurati che qualsiasi approccio tu usi, ha senso per ciò su cui stai lavorando, e non è una curva di apprendimento troppo scomoda da richiedere troppo tempo lontano dal lavoro che ti viene pagato per fare.

    
risposta data 25.02.2011 - 04:18
fonte
3

Perché enfatizza i verbi, non i nomi. A volte sono i verbi che contano.

    
risposta data 25.02.2011 - 07:22
fonte
3

Perché in generale utilizza meno codice per eseguire lo stesso compito. Meno codice da scrivere, meno codice da mantenere. Oltre ad essere meno codice, tende anche ad avere meno stato, e quindi è un po 'più semplice ragionare (una volta che ci sei abituato).

    
risposta data 12.05.2011 - 04:19
fonte
2

Forse perché le università vogliono insegnare qualcosa da tutti i paradigmi di programmazione, e per alcune cose la programmazione funzionale è migliore (come descrivere il movimento dei personaggi dei giochi e descrivere le animazioni)

    
risposta data 25.02.2011 - 10:09
fonte

Leggi altre domande sui tag