Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Les transformations fonctionnelles pures s’appliquent dans un large éventail de situations.
L’approche de transformation fonctionnelle est idéale pour interroger et manipuler des données structurées ; il s’adapte donc bien aux technologies LINQ. Toutefois, la transformation fonctionnelle a une applicabilité beaucoup plus large que l’utilisation avec LINQ. Tout processus où le principal objectif est de transformer des données d’un formulaire à un autre doit probablement être considéré comme candidat à la transformation fonctionnelle.
Cette approche s'applique à de nombreux problèmes qui peuvent ne pas sembler à première vue être considérés comme tels. Utilisé conjointement avec ou séparément de LINQ, la transformation fonctionnelle doit être prise en compte pour les domaines suivants :
- Documents basés sur XML. Les données bien formées de n’importe quel dialecte XML peuvent être facilement manipulées par le biais d’une transformation fonctionnelle. Pour plus d’informations, consultez Transformation fonctionnelle du code XML.
- Autres formats de fichiers structurés. De Windows.ini fichiers à des documents en texte brut, la plupart des fichiers ont une structure qui se prête à l’analyse et à la transformation.
- Protocoles de streaming de données. L’encodage et le décodage des données à partir de protocoles de communication peuvent souvent être représentés par une transformation fonctionnelle simple.
- Données de bases de données relationnelles et orientées objets. Les bases de données relationnelles et orientées objet, tout comme XML, sont des sources de données structurées largement utilisées.
- Solutions mathématiques, statistiques et scientifiques. Ces champs ont tendance à manipuler des jeux de données volumineux pour aider l’utilisateur à visualiser, à estimer ou à résoudre réellement des problèmes non trivials.
Comme décrit dans Refactoriser en fonctions pures, l’utilisation de fonctions pures est un exemple de programmation fonctionnelle. En plus de leurs avantages immédiats, l’utilisation de fonctions pures offre une expérience précieuse en pensant aux problèmes du point de vue de la transformation fonctionnelle. Cette approche peut également avoir un impact majeur sur la conception des programmes et des classes. Cela est particulièrement vrai lorsqu’un problème se prête à une solution de transformation de données, comme décrit ci-dessus.
Bien qu’elles soient au-delà de l’étendue de ce didacticiel, les conceptions qui sont influencées par la perspective de transformation fonctionnelle ont tendance à se centrer sur les processus plus que sur les objets en tant qu’acteurs, et la solution résultante tend à être implémentée sous la forme d’une série de transformations à grande échelle, plutôt que de changements d’état d’objet individuels.
Encore une fois, n’oubliez pas que C# et Visual Basic prennent en charge les approches impératives et fonctionnelles, de sorte que la meilleure conception pour votre application peut incorporer des éléments des deux.