Programmation orientée objet
Langage Python
H3110 v3 Article de référence

Programmation orientée objet
Langage Python

Auteur(s) : Tarek ZIADÉ

Relu et validé le 27 avr. 2016 | Read in English

Logo Techniques de l'Ingenieur Cet article est réservé aux abonnés
Pour explorer cet article plus en profondeur Consulter l'extrait gratuit

Déjà abonné ?

Présentation

1 - Historique

2 - Domaines d'application

  • 2.1 - Programmation système
  • 2.2 - Domaine scientifique
  • 2.3 - Secteur industriel
  • 2.4 - Multimédia
  • 2.5 - Bureautique
  • 2.6 - Web

3 - Python et les autres langages

  • 3.1 - Python vs Java
  • 3.2 - Python vs C++ et C#
  • 3.3 - Python vs Ruby

4 - Caractéristiques

  • 4.1 - Principales implémentations
  • 4.2 - Interpréteur en ligne
  • 4.3 - Modèle du langage

5 - Syntaxe

  • 5.1 - Types de base
  • 5.2 - Structures conditionnelles
  • 5.3 - Organisation du code
  • 5.4 - Generator

6 - Programmation orientée objet

  • 6.1 - Classes
  • 6.2 - Héritage et polymorphisme

7 - Futur de Python

Sommaire

Présentation

RÉSUMÉ

Créé au début des années 1990, le langage de script Python a été rendu public en tant que logiciel libre. C’est en raison de la clarté de sa syntaxe et de son aspect multiparadigme qu’il est utilisé dans de nombreux domaines d’application : la programmation système, le multimédia et le web, la bureautique, le domaine scientifique, et le secteur industriel. Un bref historique de ce langage débute cet article, puis il est par la suite comparé à d’autres langages (Java, C++ et C#, Ruby). Un résumé de la programmation objet est également donné. Ses caractéristiques principales (implémentations, modèle du langage, interpréteur en ligne) et la construction de sa syntaxe sont passées en revue, ils permettent de comprendre pourquoi Python est devenu désormais un langage incontournable.

Lire cet article issu d'une ressource documentaire complète, actualisée et validée par des comités scientifiques.

Lire l’article

Auteur(s)

INTRODUCTION

Python a le vent en poupe. Passé sixième de l'indice TIOBE et décrété langage de l'année, il se place désormais comme un langage incontournable pour les développeurs. Son aspect multiparadigme, la clarté et l'expressivité de sa syntaxe en font un langage de choix pour de nombreux usages.

Ce document présente un bref historique puis les domaines d'application de Python. Il le compare ensuite aux autres langages puis s'intéresse à ses caractéristiques et à sa syntaxe. Il termine par un résumé de la programmation objet. Une liste de références est également disponible dans le Pour en savoir plus [Langage PythonDoc. H 3 110].

Nota

l'indice TIOBE évalue la popularité des langages de programmation. Pour plus d'informations, le lecteur pourra consulter le site Internet http://www.tiobe.com/tpci.htm

Logo Techniques de l'Ingenieur

Cet article est réservé aux abonnés.
Il vous reste 95 % à découvrir.

Pour explorer cet article Consulter l'extrait gratuit

Déjà abonné ?


VERSIONS

Il existe d'autres versions de cet article :

DOI (Digital Object Identifier)

https://doi.org/10.51257/a-v3-h3110

Lecture en cours
Présentation

Article inclus dans l'offre

"Technologies logicielles Architectures des systèmes"

(236 articles)

Une base complète d’articles

Actualisée et enrichie d’articles validés par nos comités scientifiques.

Des contenus enrichis

Quiz, médias, tableaux, formules, vidéos, etc.

Des modules pratiques

Opérationnels et didactiques, pour garantir l'acquisition des compétences transverses.

Des avantages inclus

Un ensemble de services exclusifs en complément des ressources.

Voir l'offre

6. Programmation orientée objet

Python est un langage orienté objet complet, même s'il se garde d'imposer la Programmation orientée objet (POO) comme le fait Java : nul besoin de maîtriser cet aspect pour créer des scripts Python parfaitement aboutis, basés sur de la programmation fonctionelle.

6.1 Classes

La définition d'une classe se fait par le biais du mot-clé class, et des variables et fonctions peuvent être regroupées dans le corps de la définition.

Exemple :

>>> class leux(object):

...      def methode_1(self):

...         print 'leux.methode_1'

...      def methode_2(self, a):

...         print a

...

Chaque méthode a un premier paramètre obligatoire, appelé self par convention, qui contiendra l'instance de la classe. Les classes dérivent toutes de la classe de base object, qui fournit des mécanismes nécessaires à certaines fonctionnalités. La classe peut ensuite être instanciée comme une fonction :

>>> boz ≥ leux()

>>> boz.methode_1()

leux.methode_1

>>> boz.methode_2('boz')

boz

Un constructeur peut être ajouté pour initialiser l'instance. Il est défini par la méthode spéciale __init__.

Exemple :

>>> class MaValeur(object):

...      def __init__(self, val):

...         self.val ≥ val

...      def vaut(self):

...         print self.val

...

>>> val ≥ MaValeur(10)

>>> val.vaut()

10

Enfin, des propriétés peuvent être définies par le mot-clé property pour masquer les détails d'implémentation d'un attribut de classe donné.

Exemple :

>>> class MaValeur(object):

...      def __init__(self):

...         self._val ≥ 0

...      def...

Logo Techniques de l'Ingenieur

Cet article est réservé aux abonnés.
Il vous reste 92 % à découvrir.

Pour explorer cet article Consulter l'extrait gratuit

Déjà abonné ?


Lecture en cours
Programmation orientée objet

Article inclus dans l'offre

"Technologies logicielles Architectures des systèmes"

(236 articles)

Une base complète d’articles

Actualisée et enrichie d’articles validés par nos comités scientifiques.

Des contenus enrichis

Quiz, médias, tableaux, formules, vidéos, etc.

Des modules pratiques

Opérationnels et didactiques, pour garantir l'acquisition des compétences transverses.

Des avantages inclus

Un ensemble de services exclusifs en complément des ressources.

Voir l'offre

Sommaire
Sommaire

BIBLIOGRAPHIE

  • (1) - VAN ROSSUM (G.) -   Python Tutorial.  -  Disponible sur Internet : http://docs.python.org/tut/tut.html (2008)

  • (2) - PILGRIM (M.) -   Dive Into Python.  -  Apress. Disponible sur Internet : http://www.diveintopython.org/ (2004)

1 À lire également dans nos bases

BELLOT (P.) - MATIACHOFF (C.) - Langage JAVA. - [H 3 088] , base documentaire Technologies logicielles Architectures des systèmes (1998).

MAURICE (P.) - Langages de script. - [H 3 118], base documentaire Technologies logicielles Architectures des systèmes (2000).

QUEINNEC (C.) - Langage C. - [H 3 068], base documentaire Technologies logicielles Architectures des systèmes (2002).

SERRANO (M.) - Langage C++. - [H 3 078], base documentaire Technologies logicielles Architectures des systèmes (2003).

EMSELLEM (D.) - RIVEILL (M.) - Plate-forme.NET. - [H 3 540] , base documentaire Technologies logicielles Architectures des systèmes (2006).

HAUT DE PAGE

2 Normes et standards

WSGI2003Python Web Server Gateway Interface v1.0. Sur Internet : http://www.python.org/dev/peps/pep-0333/

ISO/CEI 8859-151999Technologie de l'information - Jeux de caractères graphiques codés sur un seul octet. Partie 15 : alphabet latin n 9.

...
Logo Techniques de l'Ingenieur

Cet article est réservé aux abonnés.
Il vous reste 93 % à découvrir.

Pour explorer cet article Consulter l'extrait gratuit

Déjà abonné ?


Article inclus dans l'offre

"Technologies logicielles Architectures des systèmes"

(236 articles)

Une base complète d’articles

Actualisée et enrichie d’articles validés par nos comités scientifiques.

Des contenus enrichis

Quiz, médias, tableaux, formules, vidéos, etc.

Des modules pratiques

Opérationnels et didactiques, pour garantir l'acquisition des compétences transverses.

Des avantages inclus

Un ensemble de services exclusifs en complément des ressources.

Voir l'offre

Ressources documentaires

Organisation des systèmes d'exploitation

   2.5 Réalisation des systèmesd'exploitation    Index bibliographique .

Conception par objets en C++

La programmation par objet, et le  langage C++, s'appliquent bien aux besoins de développement ...

Programmation des systèmes parallèles hétérogènes

La technologie OpenCL a été créée dans le but de programmer des systèmes parallèles hétérogènes et de ...

Dynamique du management des projets informatiques

Les projets informatiques se déroulent habituellement en trois phases : la phase de conception, la phase ...