langages de programmation orientés objet consistent principalement en des objets " de première classe " . Ces objets représentent des types de données complexes créés par le programmeur. Le langage de programmation Python étend la notion de ce qu'est un objet . En Python, tout est objet , y compris les fonctions . Cela signifie qu'un programmeur peut utiliser des fonctions que les données de la même manière qu'ils utilisent des variables et des objets. Pour comprendre quelles sont les fonctions de première classe sont , le programmeur doit comprendre la programmation orientée objet , les fonctions et la façon dont les deux travaillent ensemble en Python. Objets En programmation orientée objet, la notion clé est celle de l '«objet ». Un objet est un type de données créé par un programmeur pour représenter une entité avec des données et des fonctions . Alors que d'autres types de données sont de simples représentations de valeur, tels que des entiers ou des personnages , les objets sont complexes, y compris de nombreuses valeurs et de fonctions . Cependant, les objets agissent encore comme les autres types de données en ce sens qu'ils peuvent être créés , détruits, copiés et utilisés comme arguments pour d'autres fonctions. First-Class Objects Première objets de classe sont des objets qui peuvent être créés ou détruits ou utilisés comme arguments de fonctions . Dans la plupart des langages de programmation orientés objet , tous les objets sont des objets de première classe . Mais d'autres entités, telles que les fonctions ne sont pas objets de première classe . Une fonction en C + + ne se comporte pas comme un objet en C + + se comporte , donc il ya une nette différence entre les deux lors de l'implémentation C + + code. Python et Objets < p> un disant populaire sur le langage de programmation Python affirme que « Tout est objet ». Le dicton est vrai . Tout en Python n'agit comme un objet. Plus précisément , les fonctions sont des objets de première classe en Python . Cela rend les fonctions " fonctions de première classe " que les programmeurs peuvent passer comme arguments à d'autres fonctions. Cela signifie que les fonctions ont aussi un ensemble d'attributs semblables aux classes qui stockent des données sur une instance particulière d' une fonction d'exécution. Exemples Dans cet exemple, le programmeur crée deux fonctions simples. Le premier qu'elle définit comme une fonction normale , avec un argument variable. La seconde utilise alors la première fonction dans la liste des arguments . La seconde fonction peut alors appeler la première fonction à l'intérieur de sa définition. La fonction appelée dans l'autre fonction peut utiliser les variables locales à l'intérieur de la fonction qui l'a appelé : >>> def func1 (x) : . . . return x * 3 >>> def func2 (f, y) : //"f" représente une fonction , mais a la même apparence comme une variable . . . retour f ( y) //Python sait f est une fonction car il est utilisé comme un >>> func2 ( func1 , 3) 9
|