Qu'est-ce que la programmation déclarative?
La programmation déclarative est un moyen de spécifier ce qu'un programme doit faire, plutôt que de spécifier comment le faire. La plupart des langages informatiques sont basés sur les étapes nécessaires à la résolution d'un problème, mais certaines langues n'indiquent que les caractéristiques essentielles du problème et laissent à l'ordinateur le soin de déterminer le meilleur moyen de résoudre le problème. Les premières langues soutiendraient la programmation impérative, tandis que les secondes soutiendraient la programmation déclarative.
L'exemple suivant de SQL permet de récupérer toutes les régions de vente où les bénéfices dépassent un certain nombre, par exemple 700 dollars US (USD), à partir des données de ventes.
Sélectionnez une région, Bénéfice des ventes où Bénéfice> 700
Cette instruction n'indique pas ce que le système SQL doit faire pour obtenir les données. Le système SQL peut consulter chaque enregistrement de vente et déterminer si la condition est remplie ou obtenir rapidement les premiers enregistrements à partir de données pré-triées. La déclaration indique uniquement la nature des données souhaitées.
Prolog est un langage de programmation déclaratif qui indique les relations logiques entre les entités.
ancêtre (M, C): - mère (M, C)
ancêtre (X, Z): - mère (X, Y), ancêtre (Y, Z)
Le programme ci-dessus indique des truismes. Si M est la mère de C, alors M est un ancêtre de C. Si X est la mère d'une personne, Y d'un ancêtre de Z, X est un ancêtre de Z. Compte tenu de cela et de quelques faits mère-enfant, le programme peut répondre à des questions sur l'ensemble de l'arbre généalogique maternel.
Pendant l'exécution du programme, le système Prolog construit un certain nombre d'instructions vraies, créant ainsi une base de connaissances. Cette base de connaissances fait l'objet d'une recherche efficace seule. Le créateur du programme ci-dessus ne précise pas comment effectuer une recherche.
HTML et CSS sont des langages de programmation déclaratifs. Par exemple, l'exemple HTML <table border = "1"> , indique une bordure mince. Un exemple de CSS est color: blue . Ceci spécifie la couleur du texte. Comme on peut le voir dans ces exemples, HTML et CSS spécifient ce qui doit apparaître sur une page Web mais pas comment.
L'avantage des langages de programmation déclaratifs est principalement double. Les programmes sont concis; Cela permet même aux non-programmeurs d'obtenir facilement des solutions. Dans l'exemple SQL ci-dessus, un analyste ou un membre du support technique peut obtenir les informations souhaitées. De même, les non-initiés peuvent écrire des pages Web acceptables avec de simples commandes HTML et CSS.
Le deuxième avantage du modèle de programmation déclaratif est qu'un code impératif répétitif indiquant comment résoudre les problèmes est fourni dans le système informatique en coulisse. Ce code peut être rendu très efficace et peut intégrer les meilleures idées de l'informatique. Il peut tirer parti du parallélisme.