Différence clé - Programmation fonctionnelle vs programmation impérative
La principale différence entre la programmation fonctionnelle et la programmation impérative est que la programmation fonctionnelle considère les calculs comme des fonctions mathématiques et évite de changer d'état et de données mutables tandis que la programmation impérative utilise les instructions qui changent l'état du programme.
Un paradigme de programmation fournit un style de construction de la structure et des éléments d'un programme informatique. Les paradigmes de programmation aident à classer les langages de programmation en fonction de leurs fonctionnalités. Un langage de programmation peut influencer plus de paradigmes. Dans le paradigme orienté objet, le programme est structuré à l'aide d'objets et les objets transmettent des messages à l'aide de méthodes. La programmation logique peut exprimer le calcul exclusivement en termes de logique mathématique. Deux autres paradigmes de programmation sont la programmation fonctionnelle et la programmation impérative. La programmation fonctionnelle permet d'exprimer des calculs comme l'évaluation de fonctions mathématiques. La programmation impérative fournit des instructions qui modifient explicitement l'état de la mémoire. Cet article traite de la différence entre la programmation fonctionnelle et la programmation impérative.
CONTENU
1. Aperçu et différence clé
2. Qu'est-ce que la programmation fonctionnelle
3. Qu'est-ce que la programmation impérative
4. Similitudes entre la programmation fonctionnelle et la programmation impérative
5. Comparaison côte à côte - Programmation fonctionnelle vs programmation impérative sous forme tabulaire
6. Résumé
Qu'est-ce que la programmation fonctionnelle?
La programmation fonctionnelle est basée sur les mathématiques. Le principe clé de la programmation fonctionnelle est que tout le calcul est considéré comme une combinaison de fonctions mathématiques séparées. Une fonction mathématique mappe les entrées aux sorties. Supposons qu'il existe une fonction appelée f (x) = x * x. La valeur x 1 est mappée à la sortie 1. La valeur x 2 est mappée à la sortie 4. La valeur x 3 est mappée à la sortie 9 et ainsi de suite.
Figure 01: Exemple de langage de programmation fonctionnel - Haskell
En programmation fonctionnelle, les modèles sont considérés. Les langages de programmation fonctionnels Haskell utilisent la méthode ci-dessous pour trouver la somme des nombres.
La fonction sum a des valeurs entières et le résultat sera également un entier. Il peut être écrit sous la forme sum: [int] -> int. La sommation peut être effectuée en suivant les modèles ci-dessous.
sum [n] = n, la somme d'un nombre est le nombre lui-même.
S'il existe une liste de nombres, elle peut être écrite comme suit. Le n représente le premier nombre et ns représente les autres nombres
somme (n, ns) = n + somme ns.
Les modèles ci-dessus peuvent être appliqués pour trouver la somme de trois nombres qui sont 3,4,5.
3 + somme [4,5]
3 + (4 + somme [5])
3+ 4 + 5 = 12
On dit qu'une fonction ou une expression a des effets secondaires si elle modifie un état en dehors de sa portée ou a une interaction observable avec ses fonctions appelantes en plus de la valeur de retour. La programmation fonctionnelle minimise ces effets secondaires. Les changements d'état ne dépendent pas des entrées de fonction. Il est utile pour comprendre le comportement du programme. Un inconvénient de la programmation fonctionnelle est que l'apprentissage de la programmation fonctionnelle est plus difficile que la programmation impérative.
Qu'est-ce que la programmation impérative?
La programmation impérative est un paradigme de programmation qui utilise les instructions qui changent l'état d'un programme. Il se concentre sur la description du fonctionnement d'un programme. Les langages de programmation tels que Java, C et C # sont des langages de programmation impératifs. Il fournit une procédure étape par étape sur ce qu'il faut faire. Les langages de programmation impératifs contiennent des structures telles que if, else, while, for boucles, classes, objets et fonctions.
Figure 02: Exemple de langage de programmation impératif - Java
La somme de dix nombres peut être trouvée en Java comme suit. À chaque itération, la valeur i est ajoutée à la somme et affectée à la variable de somme. À chaque itération, la valeur de la somme continue de s'ajouter à la somme précédemment calculée.
somme int = 0;
pour (int i = 0; i <= 10; i ++) {
somme = somme + i;
}
La programmation impérative est facile à apprendre, à comprendre et à déboguer. Il est facile de trouver l'état du programme grâce à l'utilisation de variables d'état. Certains inconvénients sont que cela peut rendre le code long et peut également minimiser l'évolutivité.
Quelle est la similitude entre la programmation fonctionnelle et la programmation impérative?
La programmation fonctionnelle et la programmation impérative sont des paradigmes de programmation
Quelle est la différence entre la programmation fonctionnelle et la programmation impérative?
Diff article au milieu avant la table
Programmation fonctionnelle vs impérative |
|
La programmation fonctionnelle est un paradigme de programmation qui considère le calcul comme l'évaluation de fonctions mathématiques et évite les changements d'état et les données mutables. | La programmation impérative est un paradigme de programmation qui utilise des instructions qui changent l'état d'un programme. |
Structures | |
La programmation fonctionnelle contient des appels de fonction et des fonctions d'ordre supérieur. | La programmation impérative contient des boucles if, else, while, for, des fonctions, des classes et des objets. |
Langages de programmation | |
Scala, Haskell et Lisp sont des langages de programmation fonctionnels. | C, C ++, Java sont des langages de programmation impératifs. |
Concentrer | |
La programmation fonctionnelle se concentre sur le résultat final. | La programmation impérative se concentre sur la description du fonctionnement d'un programme. |
Simplicité | |
La programmation fonctionnelle est difficile. | La programmation impérative est plus facile. |
Résumé - Programmation fonctionnelle vs programmation impérative
Un paradigme de programmation fournit un style de construction de la structure et des éléments d'un programme informatique. La programmation fonctionnelle et la programmation impérative en sont deux. La différence entre la programmation fonctionnelle et la programmation impérative est que la programmation fonctionnelle considère les calculs comme des fonctions mathématiques et évite de changer d'état et de données mutables tandis que la programmation impérative utilise les instructions qui changent l'état du programme.