À propos des variables dans la programmation

Si vous regardez Wikipédia, vous pouvez voir qu'une variable en programmation est une zone de mémoire nommée ou autrement adressée, dont l'adresse peut être utilisée pour accéder aux données. Le mot de cette définition sur lequel j'aimerais attirer votre attention, ce sont les données. Est-ce vraiment ainsi que dans les langages de programmation dans lesquels nous écrivons, les variables ne sont utilisées que pour accéder aux données. Par exemple, j'écris en PHP. Et comme dans d'autres langages de programmation, les variables, en plus de l'accès aux données, sont également utilisées pour accéder aux objets (instances de classes) et aux tableaux (associatifs et ordinaires) et à d'autres choses. Les données (chaînes, entiers, nombres à virgule flottante, valeurs booléennes), les objets (instances de classe) et les structures (tableaux associatifs et réguliers, si vous prenez PHP) pour une personne sont essentiellement des entités différentes (abstractions), et il serait raisonnable, dans nos langages de programmation, traitez-les comme des choses différentes, en ignorant le fait que pour une machine elles sont une seule et même (zones de mémoire nommées). Pour cela, je propose au lieu de variables de commencer à utiliser des entités telles que, par exemple: objet , structure , données .

// , ,      ,         $ $objectVar = new SomeClass(); //         "", ,  ,      ^ ^objectEntity = new SomeClass(); // "",  ,      * *simpleArray = ['one', 'two', 'three']; *associativeArray = ['key' => 'val', 'another_key' => 'another_val']; //  "",    % %string = 'abcde'; %integer = 123; %floating = 1.23; %boolean = true; 

Un tel remplacement permet de séparer mentalement de tels différents et de ne rien avoir dans des entités communes (abstractions) telles que des objets , des structures et des données .

Un RFC pour PHP sur ce sujet est déjà en préparation.

PS
En général, cela n'a pas fonctionné pour créer un RFC pour PHP, car les développeurs PHP ont déclaré qu'ils ne voulaient pas dépenser les caractères qui seraient nécessaires pour mettre en œuvre cette idée. J'ajouterai de moi-même qu'en PHP, il ne pouvait toujours pas être implémenté car il a un typage dynamique. Mais! Dans un langage avec typage statique, où les types ne changent pas, cela peut être implémenté. Par conséquent, j'espère que les développeurs de ces langages porteront leur attention sur l'idée proposée.

Source: https://habr.com/ru/post/fr437496/


All Articles