lundi 28 février 2011

Environnements de développement Python sous Ubuntu

Introduction
Python est un langage de programmation agréable et aux nombreuses ramifications (y compris sous Windows).
Faire quelques bidouilles avec gEdit et l'interpréteur reste à la portée de tout un chacun.
Mais si l'on désire pousser l'expérience un peu plus loin, il faut envisager l'installation et l'utilisation d'un environnement de développement.

Cet article se focalise principalement sur l'installation et la configuration de Eclipse (y compris greffon et projet Python) pour faire des développements Python.
Ainsi, l'article abordera:
  • L'activation de l'interpréteur Python dans le menu "Application d'Ubuntu".
  • Une présentation succincte de l'excellent Wing qui est malheureusement payant.
    Pour plus d'information à ce sujet, tout un chacun trouvera son bonheur sur le site officiel WingWare.
  • Un guide d'installation de l'environnement de développement Eclipse
  • L'installation et la configuration du Greffon pyDev permettant de faire des développements Python sur Eclipse.
  • La création et la configuration d'un premier projet Python sur Eclipse.

Installer Python sur Ubuntu
Python est devenu un langage de programmation très populaire. Sa notoriété à largement dépassé les frontières des systèmes Linux/Unix.
 
Sur Ubuntu, il n'est pas nécessaire d'installer Python car il est installé par défaut (du moins dans la version 10.10).
Par contre, si l'interpreteur et la console interactive sont présents, la console n'est pas accessible depuis le menu "Applications" de Ubuntu.

Afficher Python dans le menu Application
Effectuer les opérations suivantes pour afficher la console de Python dans le menu principal:
  • Menu Système | Préférence | Menu principal
  • Sélectionner le menu programmation
  • Cocher l'élément Python

Activer l'interpréteur Python dans le menu "Applications"

Environnements de développements Python
Il existe de nombreux environnements de développement pour Python.
Je vais cependant me limiter à Eclipse tout en glissant un mot à propos de Wing.

Wing
Par le passé, j'ai eu l'occasion de découvrir Wing en faisant mes premiers développements Python sous Windows.
Wing est un environnement de niveau professionnel écrit en Python pour les développeurs Python.
Je l'ai utilisé durant toute sa période d'essai et franchement, s'il me fallait un jour entamer un travail en tant que professionnel, c'est certainement vers Wing que je me tournerai.
Le problème de Wing, c'est qu'il est payant. A savoir +/- 40$ la licence personnelle et +/- 180$ pour la licence professionnelle (gloups!).

Eclipse
Plus récemment, j'ai eu l'occasion d'installer Eclipse pour tester quelques développements sous Android.
Eclipse est développé en Java et supporte de nombreux langages de développements.
Comme je dispose d'éclipse sur mon PC, je vais donc tenter de faire quelques développements Python depuis cette plateforme.

Installer Eclipse à la main:
Pour savoir comment j'ai installé le Java Development Kit d'Oracle et Eclipse sur Ubuntu, reportez-vous à l'article "Développement Android sous Ubuntu".
La version Oracle étant un pré-requis pour le développement Android, c'est vers cette installation manuelle que je m'étais tourné.

Installer Eclipse avec la Logithèque Ubuntu:
Il est possible d'installer directement Eclipse et la version Sun du JRE Java (Java Runtime Environment) depuis la logithèque Ubuntu.
L'environnement Java est automatiquement intallé en même temps que l'installation d'éclipse (ou FreeMind) depuis la logithèque.
Note personnelle: J'ai testé l'installation d'éclipse et de Java depuis la logithèque Ubuntu lors du remplacement de mon PC portable.
J'ai quand même l'impression que cette version de Java semble moins réactive que la version Oracle (pourtant installé la première fois sur une machine moins puissante).

Installer le greffon Python sur Eclipse
pyDev
pyDev est un greffon (plugin) Eclipse permettant de faire des développements en Pyhton. Il est ainsi possible de profiter d'un debugger, d'un "code completion" et du formatage de syntaxe.
PyDev permet également de conduire des développement "Google App Engine" et DJango.
DJango est un framework python permettant de développement des applications web performantes. Pour plus d'information, voir djangoproject.com ou django-fr.org

Installer pyDev
Voici la marche à suivre:
  • Démarrer Eclipse
  • Menu Help | Install new software ...
  • Saisir l'url du plugin pyDev http://pydev.org/updates/ et sélectionner pyDev uniquement (1*) et installer le plug-in (bouton Finish)
  • Redémarrer Eclipse.

1*) pyDev Mylyn concerne l'intégration de développement de type Mylyn (task oriented developpement). Il reclame le greffon Mylyn.

Connaître la version de son interpreteur Python
  • Démarrer un terminal
  • Taper la commande "python", la version apparaît dans l'entête de l'interpreteur.

domeu@domeu-Lenovo:~$ python
Python 2.6.6 (r266:84292, Sep 15 2010, 15:52:39)
[GCC 4.4.5] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>


Configurer l'interpreteur Python dans Eclipse
Lorsque Eclipse est redémarré, effectuer les opérations suivantes:
  • Menu "Windows | Preference"
  • Sélectionner le noeud: pyDev + interpreter Python
Il est possible d'utiliser soit le bouton "Auto-Config" qui fonctionne en général assez bien, soit d'ajouter un nouvel interpréteur manuellement.
  • Ajouter un nouvel interpreteur:
    • Pour le nom utiliser par exemple Python266 pour la version 2.6.6 de Python.
    • Pour l'exécutable, sélectionnez /usr/bin/python sur Ubuntu (sous Windows, ce sera plutôt C:\Python\python.exe).
    • Sélectionner tous les répertoires proposés pour l'initialisation du PythonPath 
Consulter la section Interpreter du manuel de pyDev pour plus d'information sur la configuration de l'interpreteur Python dans Eclipse.

Attention: dans Eclipse, la définition des interpréteurs tel que décrit ci-dessus est propre au workspace (répertoire de travail) sélectionné lors du lancement d'eclipse.
Si vous changez de répertoire de travail, il faudra aussi redéfinit l'interpréteur Python à utiliser.

Développement Python sur Eclipse
Voici la description de la création et de la configuration d'un premier projet Python dans Eclipse.
Si Eclipse est un environnement puissant, il est aussi un peu plus complexe.
Un petit guide de prise en main est toujours le bien venu pour démarrer rapidement sans dépenser inutilement son énergie.

Dans Eclipse:
1) Sélectionner le menu File | New | Project...
2) Sélectionner un projet de type pyDev + pyDev Project
3) Dans la configuration du projet:
  • Donner lui un nom, par exemple "myFirstPythonProject"
  • Sélectionner la bonne version de la syntaxe (dans notre cas, 2.6 puisqu'il s'agit de l'interpreter python 2.6.6)
  • Eventuellement sélectionner un interpreteur spécifique (plutôt que d'utiliser l'interpreteur par défaut)
  • Ne pas référencer d'autres projets et cliquer sur le bouton Finish
Création d'un projet Python (pyDev project)
Configuration du projet
Attention: Dans Eclipse, la définition des interpréteurs tel qu'effectué dans le point "Configurer l'interpreteur Python dans Eclipse" est propre au workspace (répertoire de travail) choisit lors du lancement d'eclipse.
Si vous changez de répertoire de travail, il faudra redéfinit l'interpréteur Python à utiliser.

4) Créer un nouveau fichier source
  • Menu File | New | file...
  • Sélectionner le répertoire src du nouveau project myFirstPythonProject
  • Nommer le fichier, par exemple myFPP.py
Ajouter un fichier source au projet Python

5) Taper le petit bout de code suivant:
a = 123
b = 12
c = a + b
print( "%i + %i = %i" % (a,b,c) )

6) Configurer l'environnement d'exécution pour ce projet
  • Sélectionner le "Run Configuration..." (cfr captures d'écrans ci-dessous)
  • Sélectionner le noeud "Python Run" + presser le bouton "new configuration" (cfr capture d'écrans ci-dessous)
  • Nommer la configuration "myFPP Run"
  • Remplir les paramètres de la section "Main":
    • Sélectionner le projet myFirstPythonProject
    • Sélectionner le module principal myFPP.py
  • Remplir les paramètres de la section "Interpreter"
    • Choisir l'interpreteur par défaut ou opter pour l'interpreter Python266 définit précédemment.
  • Remplir les paramètres de la section "Common"
    • Cocher "Display in favorite menu" pour Debug et Run
Définir un "Run Configuration"
Définition d'une nouvelle configuration "Run config."
Options "Common" du "Run config."
  • Confirmer la sauvegarde

7) Exécuter le programme
Il ne reste plus qu'à exécuter le petit bout de programme avec le "Run Configuration" qui vient d'être créé.
Le résultat s'affiche dans la console d'Eclipse.

Sources

1 commentaire:

Anonyme a dit…

Super documentation. Merci pour le coup de main.