Fonctionnelle vs. modèles de programmation procédurale pour Big Data

Quand les gens parlent de la carte et de réduire dans les grandes données, ils le font à titre d'activités au sein d'un modèle de programmation fonctionnelle. La programmation fonctionnelle est l'une des deux manières que les développeurs de logiciels créent des programmes pour résoudre des problèmes d'affaires. L'autre modèle est la programmation procédurale. Jetez un coup d'œil rapide à comprendre les différences et de voir quand il est préférable d'utiliser l'un ou l'autre modèle.

Programmes de procédure sont très structurés et fournissent des instructions étape-par-étape sur ce qu'il faut faire avec les données d'entrée. L'ordre d'exécution est important, et les données d'entrée est modifié à mesure qu'elle progresse à travers chaque étape du programme. Des exemples de langages procéduraux comprennent FORTRAN, COBOL, C, et C ++.




Les meilleures utilisations pour les programmes de procédure sont ceux où il est normal de changer les valeurs des données d'entrée ou où vous avez besoin pour comparer les valeurs calculées dans l'une des étapes pour déterminer si vous devez poursuivre le traitement ou quitter le programme et de livrer le résultat.

En revanche, les programmes fonctionnels ne changent pas les données d'entrée. Ils regardent toutes les données pour des modèles spécifiques et appliquent des règles pour identifier les éléments importants puis de les assembler dans des listes. L'ordre du traitement n'a pas d'importance car chaque opération est indépendante de l'autre. Des exemples de langages fonctionnels comprennent Lisp, Scheme, Prolog, et R.

Programmes fonctionnels ne changent pas les données d'entrée et sont le plus souvent utilisés quand il est nécessaire d'examiner les données encore et encore pour des motifs différents. Par exemple, vous pouvez regarder à travers une liste de tous les comtés des États-Unis qui ont voté républicain à la dernière élection et ensuite passer par la liste de tous les comtés démocrates. Ceci va produire deux listes distinctes de sortie.


» » » » Fonctionnelle vs. modèles de programmation procédurale pour Big Data