* Agence Joomla Argenteuil
Agence Joomla Argenteuil
Article:
Dans le domaine de l'informatique, la portée lexicale (dite également portée statique), se résume en tant qu'une méthode pour conduire la portée d'une variable en fonction de sa position dans le code. Une variable est nommée lexicale si sa portée est exposée par le texte du programme. Cette variable se trouve dans la portée de la fonction solde, à partir de la liste des paramètres, et jusqu'à la fin de la définition de la fonction. La fermeture lexicale (dénotée par l'expression lambda) utilise la définition lexicale de balance de la fonction solde : c'est une capture de variable lexicale ; la variable ainsi appréciée a la durée de vie de la fonction qui la capture, qui peut excéder la durée d'un appel à solde ; mais la portée de cette capture est strictement bornée par le texte de la fermeture. Il est évident et certain qu'elle ne va pas interférer avec une autre variable de même nom qui serait définie dans un fragment de code du programme hors de la fonction solde, ou encore avec la variable nommée balance dans d'autres appels de la même fonction. Le programmeur est ravi que les variables privées ne soient pas inopportunément accédées ou modifiées par d'autres fonctions. Cela est considéré comme une amélioration considérable par rapport à la combinaison de portée globale et portée dynamique plus anciennes. La portée lexicale fut d'abord développée par le langage Algol, puis utilisée par d'autres langages depuis. Certains langages ont choisi la portée lexicale dans leurs incarnations les plus modernes, comme Perl. D'autres offrent les variables dynamiques et lexicales, par choix (Common Lisp) ou par le fait d'une évolution progressive (Emacs Lisp, avec lexical-let). Le principe de localité constitue un terme générique en informatique, qui convient à une observation des programmes actuels et réunit différents types de localités. Les programmes détiennent deux caractéristiques captivantes : Ils tendent à utiliser les instructions et les données qui sont situées dans la zone mémoire proche des données et instructions parvenues récemment: il s'agit du principe de localité spatiale. Alors que les programmes suivent fréquemment des boucles et des sauts pour les instructions, la localité spatiale est encore plus marquée pour les données. Ils tendent à reprendre les données et instructions servies dans le passé: il s'agit du principe de localité temporelle. En effet, des données ou instructions qui sont reliées entre elles (par exemple les données d'un tableau) sont transcrites dans des endroits proches les uns des autres de la mémoire principale. Or, les programmes traitent habituellement les données de manière séquentielle. Ainsi, si un élément est accédé, son voisin sera très probablement accédé, créant ainsi la localité spatiale. Les boucles étant des caractéristiques courantes des programmes modernes, un élément accédé récemment sera également accédé dans le futur, créant ainsi la localité temporelle