Relis l'article, les avantages y sont bien listés il me semble.
Oui, réutilisabilité, testabilité, compréhension et maintenabilité. Mais ces avantages sont également mis en avant par les promoteurs des langages objet. J'aimerai voir des preuves :) ou au moins des arguments un peu plus développés, au-delà d'un programme de 3 lignes. Le seul argument qui ressort est l'indépendance par rapport aux threads.
Sinon, oui, bien sûr c'est applicable en théorie. Mais en pratique? Est-ce que ça vaut la peine de se casser la tête pour implémenter la majorité de mon code de cette manière? Lui parle de programmer des jeux. Mais concevoir programmer des outils et des batchs de gestion est assez différent, je pense, car très dépendant de l'extérieur (base de données / fichiers / application externe).
J'aimerais bien voir un exemple, même simple, de ce qu'on peut faire. Par exemple, imaginons qu'on ait une base de clients avec une table client. Si on souhaite juste faire une recherche du nom du client en fonction de son identifiant dans la table, ce n'est pas une fonction pure (puisque son résultat dépend de l'état de la base). Donc comment séparer ce qui est "impur" (dépendant de l'état de la base de données) de ce qui peut être codé en fonctions "pures"?
[^] # Re: Avantages de la programmation fonctionnelle?
Posté par Flo . En réponse au journal Adopter un style de programmation fonctionnel. Évalué à 4.
Sinon, oui, bien sûr c'est applicable en théorie. Mais en pratique? Est-ce que ça vaut la peine de se casser la tête pour implémenter la majorité de mon code de cette manière? Lui parle de programmer des jeux. Mais concevoir programmer des outils et des batchs de gestion est assez différent, je pense, car très dépendant de l'extérieur (base de données / fichiers / application externe).
J'aimerais bien voir un exemple, même simple, de ce qu'on peut faire. Par exemple, imaginons qu'on ait une base de clients avec une table client. Si on souhaite juste faire une recherche du nom du client en fonction de son identifiant dans la table, ce n'est pas une fonction pure (puisque son résultat dépend de l'état de la base). Donc comment séparer ce qui est "impur" (dépendant de l'état de la base de données) de ce qui peut être codé en fonctions "pures"?