Question

Quelle est la différence entre les paradigmes de programmation déclaratif et procédural ? Pourriez-vous donner quelques exemples?

Quels sont les autres paradigmes de programmation?

Était-ce utile?

La solution

Impératif

Il existe plusieurs sous-paradigmes du paradigme de programmation impératif, tels que les paradigmes de programmation procédural ou orienté objet .

Dans le paradigme de la programmation impérative, vous décrivez l’algorithme pas à pas, à divers degrés d’abstraction.

Exemples de langages de programmation prenant en charge le paradigme procédural:

  • C (et la plupart des autres langages hérités)
  • PHP, principalement
  • En un sens, toutes les langues principales

Orienté objet

Il fait généralement référence aux langages qui présentent une hiérarchie de types qui héritent des méthodes et des états, des types de base aux types dérivés, mais qui incluent également le code JavaScript inhabituel basé sur un prototype.

Exemples de langages de programmation prenant en charge le paradigme OO:

  • Java

Déclaratif

Il existe plusieurs sous-paradigmes du paradigme de la programmation déclarative, tels que les paradigmes de la programmation fonctionnelle ou logique.

Dans le paradigme de la programmation déclarative, vous décrivez un résultat ou un objectif et vous l'obtenez via un " boîte noire " ;. Le contraire de impératif.

Exemples de langages de programmation prenant en charge le paradigme de programmation déclarative:

  • yacc
  • Treetop
  • SQL
  • Expressions régulières
  • lex
  • XSLT
  • balisage, troff, CSS, VHDL

fonctionnel

La programmation fonctionnelle met l’accent sur l’application de fonctions sans effets secondaires et sans état modifiable. Les systèmes déclaratifs ci-dessus présentent certains aspects de la programmation fonctionnelle.

Exemples de langages de programmation prenant en charge le paradigme fonctionnel déclaratif:

  • Haskell
  • OCaml
  • Scheme
  • Erlang
  • F #
  • Scala

Autres conseils

La programmation déclarative est l'endroit où vous dites ce que vous voulez sans avoir à dire comment le faire. Avec la programmation procédurale, vous devez spécifier les étapes exactes pour obtenir le résultat.

Par exemple, SQL est plus déclaratif que procédural, car les requêtes ne spécifient pas les étapes pour produire le résultat.

Laissez-moi vous donner un exemple concret: j'ai besoin d'une tasse de thé.

Procédure:

  1. Accéder à la cuisine
  2. Obtenez du sucre, du lait et du thé,
  3. Mélangez-les et faites chauffer sur le feu jusqu'à ébullition
  4. Mettez cela dans une tasse et apportez-le-moi

Déclaratif:

  1. Apportez-moi une tasse de thé.

Dans un langage procédural, vous définissez l’ensemble du processus et indiquez les étapes à suivre. Vous venez de fournir des commandes et de définir comment le processus sera servi.

Dans un langage déclaratif, il vous suffit de définir la commande ou l'ordre et de le laisser au système indiquer comment exécuter cet ordre. Vous avez juste besoin de votre résultat sans fouiller dans la façon dont cela devrait être fait.

Programmation procédurale:

En programmation procédurale, lorsque le programme démarre, il suit un ensemble d’instructions. Les instructions peuvent changer en fonction du contenu de certains fichiers ou de la mémoire, mais dans l'ensemble, elles ne varient pas beaucoup. l'entrée dans le programme ne provient généralement pas d'une entrée utilisateur en temps réel, mais plutôt d'un ensemble de données pré-rassemblées.

Programmation déclarative:

Dans Déclarative Event, la programmation est centralisée autour d’un ensemble de données avec des actions facultatives que le programme peut entreprendre. Par exemple, chaque " événement " dans un traitement de texte, toute modification de la souris ou du clavier (ou du fichier) qui affecte les données, le (s) document (s). Ils n'ont pas besoin d'être effectués dans un ordre quelconque. La programmation événementielle prend la forme de petits programmes (gestionnaires d’événements) qui fonctionnent tous sur un ensemble de données commun, de sorte que chaque petit programme puisse utiliser les mêmes données, le document dans cet exemple.

Dans l’approche procédurale, vous codez votre instruction pour obtenir le résultat. Dans l’approche déclarative, vous définissez ce qui doit être résolu en tant que connaissance de la résolution du problème. Consultez l'approche procédurale ou déclarative que j'ai mise en œuvre dans les deux approches .

Comme vous le verrez dans l'exemple, en approche déclarative, vous n'avez pas besoin d'instruire HOW pour résoudre le problème.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top