Étant un codeur amateur, il me manque des connaissances fondamentales. Depuis quelques jours, je lis des choses et le mot "prédicat" ne cesse de réapparaître. J'apprécierais beaucoup une explication sur le sujet.
À votre santé!
Étant un codeur amateur, il me manque des connaissances fondamentales. Depuis quelques jours, je lis des choses et le mot "prédicat" ne cesse de réapparaître. J'apprécierais beaucoup une explication sur le sujet.
À votre santé!
Un énoncé qui est vrai ou faux. Dans la programmation, il est généralement une fonction qui retourne un booléen pour une entrée.
Plus souvent (je suppose) utilisé dans le contexte de la fonction d'ordre supérieur. E. g. filter
est une fonction dans de nombreuses langues qui prend un prédicat et une liste en argument, et renvoie les éléments de la liste pour laquelle le prédicat est vrai.
Exemple en javascript:
lessThanTen = function(x) { return x < 10; }
[1,7,15,22].filter(lessThanTen) --> [1,7]
la fonction lessThanTen
est le prédicat ici, qui est appliqué à chaque élément de la liste. Bien sûr, une expression booléenne peut être utilisé comme prédicat en place d'une fonction, d'e.g filter(true)
sera de retour la liste complète, filter(false)
d'une liste vide.
Un prédicat n'est pas simplement une expression dont le résultat est vrai ou faux, il y a plus que cela. Le terme "prédicat" est utilisé pour désigner une expression qui détermine si quelque chose est vrai ou faux. Ou en d'autres termes, il fait une assertion et renvoie true ou false en fonction de cela.
Par exemple (en C #):
/*this is a predicate, as it's sole purpose is to make some
assertion about something.*/
bool IsNameBob(string name)
{
return name == "Bob";
}
/*Whereas this is not a predicate, as it's performing an action
then evaluating to true if it succeeds. */
bool DoSomethingCool() {
try
{
ImDoingSomethingCool();
}
catch
{
return false;
}
return true;
}
Je comprends que ce que j’ai mis ici est purement une différence de sémantique, mais c’est ce sur quoi cette question portait, non? Sémantique?
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.