Python > Pourquoi Python ?
Avant-propos
Python est un langage :
- conçu pour produire du code de qualité, portable et facile à intégrer,
- de haut niveau, orienté objet et totalement libre,
- hautement productif,
- dynamique.
Qualité
- une syntaxe claire et cohérente,
- les conventions de codage sont intégrées au langage,
- intègre des modules de test (doctest et unittest).
Orienté objet
- n'est pas imposé,
- tous les mécanismes essentiels sont implémentés,
- le code peut être structuré en modules.
Portable
- Python fonctionne sous différentes variantes d'Unix, Windows, Mac OS, BeOS, ...,
- différentes implémentations : CPython, Jython, PyPy, IronPython, Unladen Swallow,
- l'ensemble des primitives et la majorité des extensions de la bibliothèque
standard sont disponibles sur toutes les plates-formes.
Facile à intégrer
Il est possible d'écrire un programme hybride Python/C/C++ :
- embarquer du Python au sein d'un programme C/C++,
- interfacer du Python avec un programme écrit en C/C++.
Hautement productif
- la gestion de la mémoire et le typage des données sont automatisés,
- la syntaxe du langage est concise,
- de nombreuses extensions Open Source sont disponibles,
- Python est un langage dynamique, le code source n'est pas compilé
mais exécuté à la volée.
Définition et évolution du langage
Le langage est définit et évolue au fil de l'approbation des Python Enhancement Proposals.
Chaque PEP aborde un aspect précis du langage, de sa conception ou de sa philosophie
et fait l'objet de critiques jusqu'à être approuvé, implémenté et intégré.
Le langage évolue régulièrement et de manière collaborative.
PEP explicitant les conventions de codage -
http://www.python.org/dev/peps/pep-0008/
- Exemple : l'indentation fait partie du langage, si une ligne n'est pas correctement indentée
le programme ne sera pas exécuté.
Toutes les PEP : http://www.python.org/dev/peps/