* Integrateur Magento Besancon
Integrateur Magento Besancon
Article:
Tout identifiant en informatique est enchaîné au sein d'une étendue qui se nomme la portée de l'identifiant. Elle peut être lexicale ou dynamique. Une portée lexicale est montrée par une partie du code source. Dans cette partie, l'identifiant n'a qu'une unique relation. Un identifiant à portée globale est relié au sein de la globalité du code source (parfois juste après sa déclaration ou sa détermination). Dans beaucoup de langages de programmation, toutes les fonctions disposent une portée globale (exemple : C). Quand un identifiant à portée globale déclare une variable, on parle dans ce cas de variable globale. Celles-ci donnent particulièrement l'opprtunité d'enregistrer des données utiles à de multiples endroits du programme, un cas spécial étant les verrous. Un identifiant à portée locale n'est allié que dans une combinaison syntaxique du langage, fréquemment celle où il est appellé. Lorsqu'un identifiant à portée locale déclare une variable, on parle alors de variable locale. De même, dans la généralité des langages, un identifiant à portée locale dissimule tout éventuel identifiant de même nom, de plus grande portée en revanche. Nommer deux fois le même identifiant dans la même portée peut être prise comme une erreur, ou comme une redéclaration, seleon le langage et le contexte. La base de portée lexicale a été plantée pour la première fois dans LISP 1.5. Il fut additionné à Algol 60, dont les provenants sont spécifiquement à portées exclusivement lexicales (C, Pascal). Scheme, qui en fut un promoteur, est un dialecte Lisp qui n'a aussi de portées que lexicales. Common Lisp, lui, jouit à la fois de portées lexicales, importées de Scheme, et de portées dynamiques. Une portée dynamique est caractérisée dans une étendue dynamique limitée par un point d'entrée et un point de sortie lors de l'exécution. La liaison d'un identifiant à portée dynamique voile une liaison antérieure au sein de l'étendue dynamique de la forme qui accomplit cette récente liaison .Une variable à portée dynamique, nommée variable dynamique, permet donc de propager dans la pile d'appels une modification à un environnement. Des langages non fonctionnels supportent également une portée dynamique, notamment ceux issus de Forth (un langage à pile) dont PostScript. La méthode employée est d'utiliser une seconde pile (indépendante de la pile des paramètres ou de la pile de retour des fonctions, les deux piles étant souvent communes) contenant pour chaque position empilée une référence à un dictionnaire de variables. Si une variable ne peut être trouvée dans le premier dictionnaire référencé au sommet de la pile, la recherche se poursuit dans le (ou les) dictionnaires plus bas dans la pile.