Python(x,y) est un logiciel libre scientifique de calcul numérique basé sur le langage Python, les interfaces graphiques Qt (et le cadre de développement associé), l'environnement de développement Eclipse et l'environnement de développement scientifique interactif Spyder. | Langage Python | | | Cadre de développement d'applications Qt | | | Environnement de développement Eclipse | | | Environnement de développement scientifique interactif Spyder | Avec Python(x,y), vous pouvez : - réaliser des calculs de manière interactive : graphiques 2D et 3D, calcul matriciel, calcul formel, etc. ;
- choisir
la simplicité d'un style de programmation fonctionnel (avec une syntaxe
proche de celle de MATLAB) aussi bien que la puissance d'un style de
programmation orienté objet ;
- entreprendre des projets de
développement du plus simple script à la plus sophistiquée des
applications grâce au cadre de développement Qt et à la plateforme
Eclipse ;
- retrouver un environnement de développement
interactif similaire à ceux de MATLAB ou IDL grâce à Spyder : vous
pourrez ainsi apprendre Python tout en gardant vos anciennes habitudes
de développement ;
- exécuter des scripts en calcul parallèle sur
des ordinateurs multiprocesseurs (ou multicoeurs) et sur des clusters
(avec Parallel Python) ;
...et ce ne sont que quelques exemples ! Python(x,y)
est une distribution Python à l'usage des scientifiques basée sur Qt et
Eclipse dotée de nombreuses extensions (Plugins). Son but est de faire
découvrir Python aux utilisateurs scientifiques de langages de
programmation interprétés (tels que MATLAB ou IDL) ou compilés (C/C++ ou
Fortran) : les premiers seront séduits par la richesse et la puissance
du langage, tandis que les seconds apprécieront de réutiliser leur
code C/C++ ou Fortran en l'état et de l'interfacer avec un langage de
scripts aussi simple. (MATLAB® is a registered trademark of The MathWorks. IDL® is a registered trademark of ITT Visual Information Solutions.) Python(x,y) a cinq fonctionnalités principales : Python
présente de nombreux avantages par rapport aux autres langages de
programmation scientifique : il s'agit d'un langage de programmation
généraliste (avec, entre autres exemples, de puissantes libraries gérant
interfaces graphiques, entrées/sorties, internet et bases de données),
gratuit et libre, fondamentalement orienté objet, très portable,
embarquable, etc. Néanmoins, les librairies Python souffrent
généralement d'un manque cruel de documentation, même si la communauté
grandissante apporte chaque jour de nouveaux tutoriaux sur de nombreux
sujets. Parce
que tester toutes les bibliothèques, en sélectionner les plus
pertinentes et rassembler toute la documentation disponible sur
internet prends beaucoup de temps. De plus, un certain recul est
nécessaire pour élaborer un cadre de développement cohérent (librairies
et environnement de développement). Python(x,y) a été conçu pour : Nous recommandons fortement l'usage de la librairie PyQt
pour le développement d'interfaces graphiques, car il s'agit d'une
librairie à la fois puissante et simple d'utilisation - le livre de
Mark Summerfield est le meilleur moyen de démarrer avec PyQt
(ce livre comporte également une très bonne introduction au langage
Python). Par ailleurs, dans Python(x,y), les outils de conception Qt
sont déjà intégrés à Eclipse (avec une aide complète de type html),
permettant ainsi par exemple de modifier rapidement des interfaces
graphiques à la souris tout en restant sous Eclipse. Pour les
programmes scientifiques, notez que les figures matplotlib (qui sont
principalement des représentation graphiques 2D) peuvent être insérées
dans des interfaces graphiques Qt, presque aussi simplement que dans
MATLAB. J'espère que cette distribution permettra de sensibiliser
les ingénieurs et chercheurs aux multiples atouts de Python pour la
programmation scientifique. Pierre Raybaut Mars 2008
|